Text mit Tags (Platzhaltern) formatieren

Sie möchten in einem Text definierte Bereiche (Tags) durch HTML Code oder andere Formatierungen ersetzen lassen und dabei selbst die Sequenzen (Namen, Format, ...) bestimmen ? Der folgende Codeschnipsel kann Ihnen die Lösung oder eine Vorlage bieten:

function FormatText($text) {

    // Definition der eigenen Tags (Formatierungsbefehle)
    $tags = array(
        'bold' => '/\[b\](.+)\[\/b\]/is',
        'center' => '/\[center\](.+)\[\/center\]/is',
        'quote' => '/\[quote\](.+)\[\/quote\]/is',
        'url' => '/\[url](.+)\[\/url\]/isU',
        'urltext' => '/\[url=(.+)\](.+)\[\/url\]/isU',
        'email' => '/\[email\](.+)\[\/email\]/isU',
        'img' => '/\[img\](.+)\[\/img\]/isU'
    );

    // Definition der HTML Tags
    $replace = array(
        'bold' => '<span style="font-weight: bold">$1</span>',
        'center' => '<center>$1</center>',
        'quote' => '<blockquote>$1</blockquote>',
        'url' => '<a href="$1" border="0">$1</a>',
        'urltext' => '<a href="$1" border="0">$2</a>',
        'email' => '<a href="mailto:$1">$1</a>',
        'img' => '<img src="$1">'
    );

    // Ersetzen der entsprechenden Passagen durch die HTML Tags
    return preg_replace($tags, $replace, $text);
}
Der Beispielcode in der Praxis: Ihr Text mit den Formatierungstags:
$text = "Meine bevorzugte [b]Hilfeseite[/b] heißt [url]http://www.YourHelpCenter.de[/url]";
Wird mit dem folgenden PHP Befehl umgewandelt:
$html = FormatText($text);
Und so sieht das Ergebnis (der String in $html) aus:
Meine bevorzugte Hilfeseite heißt http://www.YourHelpCenter.de
Eine Übersicht der o.a.  Formatierungen gibt Ihnen der folgende Beispielcode. natürlich lassen sich die Tags auch verschachteln oder kombinieren.
$demo = "[b]Fett[/b]
         [center]Zentriert[/center]
         [quote]Zitat[/quote]
         [url]http://www.yourhelpcenter.de/category/cakephp/[/url]
         [url=http://www.yourhelpcenter.de]Hier finden Sie kostenlose Hilfe und Tipps[/url]
         [email]info@yourhelpcenter.de[/email]
         [img]http://www.google.de/intl/de_de/images/logo.gif[/img]";

echo FormatText($demo);