Ashura: Variable in string einsetzen

Beitrag lesen

Hallo m².

ich habe zwei strings:

$string="[name] ist dein Name.";

$name="Paul";

wie kann ich es erreichen, dass der name Paul bei $name eingesetzt wird?
wichtig: das ganze muss dynamisch sein, das soll praktisch für jede variable funktionieren, z.b. "der [heute] ist ein schöner [tag_name]".

Meine Empfehlung: verwende ein Array.
Dort kannst du die Bezeichner selbst wählen, so z. B.:

$replacements = array (  
'vname' => 'Max',  
'name' => 'Mustermann'  
);

Dann kannst du darauf ganz einfach mittels foreach-Schleife zugreifen und mittels str_replace (ein regulärer Ausdruck ist hier überflüssig und vergeudet nur Performance) deinen gewünschten String zugreifen:

$string = 'Hallo [vname] [name]!';  
  
foreach ($replacements as $from => $to) {  
  $string = str_replace('['.$from.']', $to, $string);  
}  
  
echo $string;

Einen schönen Samstag noch.

Gruß, Ashura

--
Last Tears Keep Calling
See Angels Falling
Black Shadows In Your Head
And One Eye For The Dead