Hallo
Ich habe für meine Seite eine Funktion gschrieben, die mir den BBCode umwandelt.
Ich habe es auch geschafft, bei [ url ] ein http:// zu ergänzen, falls dies nicht vohanden ist, allerdings erscheint mir das Ganze doch recht holprig.
Gibt es eine elegantere Möglichkeit, die Sache zu verwirklichen?
Alles anzeigen
MfG
venum
PS: Falls ihr euch wundert, warum ich auch Anker bzw. Überschriftendefinierungen drinn hab, die Funktion ist für die Admins
Ich habe für meine Seite eine Funktion gschrieben, die mir den BBCode umwandelt.
Ich habe es auch geschafft, bei [ url ] ein http:// zu ergänzen, falls dies nicht vohanden ist, allerdings erscheint mir das Ganze doch recht holprig.
Gibt es eine elegantere Möglichkeit, die Sache zu verwirklichen?
Quellcode
- function bbcode($str) {
- $str = preg_replace("!\[b\](.*)\[/b\]!isU","<b>$1</b>",$str);
- $str = preg_replace("!\[i\](.*)\[/i\]!isU","<i>$1</i>",$str);
- $str = preg_replace("!\[u\](.*)\[/u\]!isU","<u>$1</u>",$str);
- $str = preg_replace("!\[c\](.*)\[/c\]!isU","<center>$1</center>",$str);
- $str = preg_replace("!\[h1\](.*)\[/h1\]!isU","<h1>$1</h1>",$str);
- $str = preg_replace("!\[h2\](.*)\[/h2\]!isU","<h2>$1</h2>",$str);
- $str = preg_replace("!\[h3\](.*)\[/h3\]!isU","<h3>$1</h3>",$str);
- $str = preg_replace("!\[img\](.*)\[/img\]!isU","<img src=\"tmp/img_other/$1\" border=\"0\" />",$str);
- $str = preg_replace("!\[a=(.*)\](.*)\[/a\]!isU","<a name=\"$1\">$2</a>",$str);
- $str = preg_replace("!\[url\]http://(.*)\[/url\]!isU","<a href=\"http://$1\">$1</a>",$str);
- $str = preg_replace("!\[url\](.*)\[/url\]!isU","<a href=\"http://$1\">$1</a>",$str);
- $str = preg_replace("!\[url=http://(.*)\](.*)\[/url\]!isU","<a href=\"http://$1\">$2</a>",$str);
- $str = preg_replace("!\[url=(.*)\](.*)\[/url\]!isU","<a href=\"http://$1\">$2</a>",$str);
- return $str;
- }
MfG
venum
PS: Falls ihr euch wundert, warum ich auch Anker bzw. Überschriftendefinierungen drinn hab, die Funktion ist für die Admins
