Как да направя това?

Radko

Registered
Здравейте имам едно питане, не знам как точно ще стане за това не съм го написал в заглавието.

Та въпроса е примерно имам един стринг:

$str = "bla bla bla <load position=test> bla bla";

да претърсвам стринга и когато открие <load position="test"> да извиква функцията loadData( 'test') на това място.

и след това като дам echo да изкарва нещо от типа

HTML:
bla bla bla 'тук резултата от функцията' bla bla

Предполгама ще става с preg_match но си нямам никаква идея

+1 който помгне, дано сте ме разбрали :)
 
PHP:
$str = "bla bla bla <load position=test> bla bla"; 

$var = str_replace('<load position=test>', 'loadData('test'), $str);

Би трябвало да ти свърши работа но незнам дали така ще изпълни функцията loadData() :)
 
Така няма да изпълни функцията първо и второ ако на position имам друга стойност няма да я сложи на функцията.
 
добре де аз ти дадох пример но position ако е друга стойност просто можеш да направиш на мястото на тест да е някаква променлива и готово
 
PHP:
function loadData($pos) {
	$pos = preg_replace('/<load position=([a-z0-9]+)>/i','$1',$pos[0]);
	//ако има други опреции с $pos
	return $pos;
}
$str = "saadad sadasd adasd <load position=test> ada";
$str = preg_replace_callback('/<load position=([a-z0-9]+)>/i','loadData',$str);
echo $str;

Написах го набързо, но мисля че ще ти свърши работа.Надявам се знаеш, че тук 'test' може да бъде само малки и гоелми латински букви и числа без пространство между тях,защото и незнам какво слагаш там.Можеш да си разшириш класа в зависимост от това какво ще има като стойност.
 

Горе