BB Code - Der QUOTE Tag
Autor
Flitze
Klicks 174676
Keywords:
BBCode, BB-Code, BB Code mit Regex, BB Code erklärt, [code]-Tags, [img]-Tags, HTML ersetzen, HTML ausschalten, QUOTE Tag, BB Code, Zitat, zitieren
Klicks 174676
Rating für BB Code
8.6 von 10
Bewertungen187
Stand
11.06.2013
8.6 von 10
Bewertungen187
Keywords:
BBCode, BB-Code, BB Code mit Regex, BB Code erklärt, [code]-Tags, [img]-Tags, HTML ersetzen, HTML ausschalten, QUOTE Tag, BB Code, Zitat, zitieren
Breadcrumb:
Tutorials » BB Code » BB Code - Der QUOTE Tag
5. [QUOTE ] Tag
[ADSENSE_LINE]Beispiele:
[ quote]Hallo ich bin ein Zitat[ /quote] =>
Zitat:
Hallo ich bin ein Zitat
[ quote]Eins[ quote]Zwei[ quote]Drei[ /quote][ /quote][ /quote] =>
Zitat:
EinsZitat:
ZweiZitat:
Drei
Code:
PHP:
<?php
// Zitate umwandeln, evtl. auch verschachtelt
$width = 575;
while(preg_match('/\[quote\](.*)\[\/quote\]/Uis', $text)) {
$width -= 10;
$quote_start = "<br><b>Zitat:</b>\n".
"<div style=\"border:solid 1px black; margin-left:5px; background-color:white; margin:0px auto; width:".$width."px\">\n";
$quote_end = "</div>";
$text = preg_replace("/\[quote](.*)\[\/quote\]/Uis", $quote_start."\\1".$quote_end, $text);
}
?>
Zitate müssen sich irgendwie vom restlichen Text abheben, damit man sie auch gut als solche erkennt. Aus diesem Grund erstelle ich ein <div>, das das Zitat umschließt. Diese <div> bekommt einen Rahmen, eine Hintergrundfarbe und wird mittig zentriert.
Die Breite des <div>s muss sich ändern, wenn mehrere Zitate geschachtelt auftreten. In einem Forum kann so was schon mal vorkommen und bei gleich bleibender Breite ließe sich keine Hierarchie erkennen.
Durch die Funktion preg_match prüfe ich, ob im Text noch irgendwo ein Zitat vorhanden ist. Ist dies der Fall, wird es mittels preg_replace ersetzt. Durch die while-Schleife kann man feststellen, ob die Zitate geschachtelt sind und dementsprechend die Breite verändern.
Zurück zur vorigen Seite:
BB Code - Der IMG Tag Weiter zur nächsten Seite:
BB Code - PHP Tag - Quellcodeauszeichnung