Danke, preg_replace_callback sollte funktionieren.
Bei der Definition der pattern hab ich aber noch Probleme.
Bei der Definition der pattern hab ich aber noch Probleme.
<?php
$inhalt = '<strong>davor [begruessung, name=Max Muster] dahinter</strong>';
$inhalt = preg_replace('#\[begruessung, name=(.*)\]#Uise', "'<i>'.strtoupper('\\1').'</i>'", $inhalt);
echo $inhalt;
?>
$inhalt = preg_replace('#\[begruessung, name=(.*)\]#Uis', "<i>Hallo \\1</i>", $inhalt);
function sayHello($name) {
return sprintf("hello my dear friend %s", $name);
}
$inhalt = preg_replace('#\[begruessung, name=(.*)\]#Uise', "'<i>'.sayHello('\\1').'</i>'", $inhalt);
<?php
function ersetzen($treffer) {
$text = 'Hallo '.$treffer[1].' '.$treffer[2].'!';
return $text;
}
$inhalt = '<strong>davor [begruessung, vorname=Max, nachname=Muster] dahinter</strong>';
$inhalt = preg_replace_callback('#\[begruessung, vorname=(.*), nachname=(.*)\]#Uis', 'ersetzen', $inhalt);
echo $inhalt;
?>
<?php include ("datei.php"); ?><strong>davor [begruessung, vorname=Max, nachname=Muster] dahinter</strong>
<h1>Die Überschrift</h1> <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.</p> <?php /* hier dann zB ein Besucherzähler oder sonstwas */ ?> <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.</p>
Kommentar