PHP preg_replace problem
Goddag.Jeg sidder med et utroligt underligt problem med preg_replace funktionen i PHP.
Følgende virker ikke:
$array[message] = 'hej';
$array[message1] = 'med';
$array[message2] = 'dig';
$str = 'en streng hvor %message% skal replaces.';
foreach($array as $key => $value)
{
$return = preg_replace("/%$key%/", $value, $str);
}
Men tilgengæld virker følgende:
$array[message] = 'hej';
$array[message1] = 'med';
$array[message2] = 'dig';
$str = 'en streng hvor %message% skal replaces.';
foreach($array as $key => $value)
{
if($key == 'message')
$p = 'message';
$return = preg_replace("/%$p%/", $value, $str);
}
Resume: preg_replace() functionen godtager ikke variablen fra foreach...
Tak på forhånd :)
P.S. Jeg har tjekket for datatype, ens strenge. både $p og $key er af samme type og har nøjagtigt det samme indhold.