Hi Leute,
ich habe mir mal ein paar gedanken zum Thema gemacht und möchte von euch mal ne Meinung hören. Nunja, es ist erstmal ein Anfang.
*edit: nun werden auch die bbcodes à la [xy=123]...[/xy] gefiltert und ggf. angehängt. Nun bin ich am überlegen, wie man die angehängten BBTAGS so ordnen kann, das sie auch in der richtigen Reihenfolge angehängt werden...
ich habe mir mal ein paar gedanken zum Thema gemacht und möchte von euch mal ne Meinung hören. Nunja, es ist erstmal ein Anfang.
*edit: nun werden auch die bbcodes à la [xy=123]...[/xy] gefiltert und ggf. angehängt. Nun bin ich am überlegen, wie man die angehängten BBTAGS so ordnen kann, das sie auch in der richtigen Reihenfolge angehängt werden...
PHP-Code:
<?php
$text = "[BLOCK]Das [I]FBI hat laut [GREEN]US-Medien rund 170 Mio. Dollar in eine Datenbank investiert,\n";
$text .= "welche für den Kampf gegen den Terror dienen sollte. Jedoch musste das Projekt\n";
$text .= "bereits vor seiner Einführung wegen Technik- und Planungsfehlern eingestellt werden.\n";
$text .= "Das Programm sollte es den FBI-Mitarbeitern ermöglichen, Informationen über Ermittlungen\n";
$text .= "digital zu speichern und Querverbindungen [/GREEN]einzelner Fälle schnell zu entdecken. FBI-Direktor\n";
$text .= "Robert Mueller ist frustriert über dieses Scheitern und eine Untersuchungskommision hat\n";
$text .= "Verknüpfungen verschiedener Ereignisse vor dem 11.Sep. gefunden welche aber aufgrund mangelnder\n";
$text .= "Ausrüstung nicht [/i]rechtzeitig erkannt wurden.[/BLOCK]";
$text_sub = substr($text,0,200);
print ("<p>");
print ($text_sub);
print ("</p>");
function close_bbtags ($str_text) {
$bbtags = array(i,green,red,block); # zu schließende BBTAGS
FOREACH ($bbtags AS $value) {
preg_match_all("/\[$value\]/siU",$str_text,$bb_open);
preg_match_all("/\[$value=(.*)\]/siU",$str_text,$bb_open_ext);
preg_match_all("/\[\/\$value]/siU",$str_text,$bb_close);
$bbo = count($bb_open[0])+count($bb_open_ext[0]);
$bbc = count($bb_close[0]);
FOR ($x=$bbc;$bbo > $x;$x++) {
$str_text = $str_text."[/".$value."]";
}
}
return $str_text;
}
print (close_bbtags($text_sub));
?>
Kommentar