Citazione Originariamente Scritto da Intriplato Visualizza Messaggio
.....chiudere......
Ecco un interessante script php attraverso il quale è possibile chiudere i tag (bbcode) lasciati aperti da qualche utente distratto. Il funzionamento dello script è molto semplice: esso conta quante volte è stato aperto un tag e quante volte è stato chiuso, se la differenza è maggiore o uguale ad 1, allora almeno un tag è stato lasciato aperto, e quindi quest’ultimo verrà chiuso automaticamente dallo script.

vedi sorgentestampainfo

1 function count_t($tag, $text) { $count = 0; for($i=0;$i<=strlen($text) - strlen($tag);$i++) { $s = substr($text, $i, strlen($tag)); if($s == $tag) $count++; } return $count; } Codice PHP: $tag = array( ";", ";" /* tag_aperto;tag_chiuso */ ); $my_text = "Il testo [b]è in grassetto"; foreach($tag as $t) { $g = explode(";", $t); $diff = count_t($g[0], $my_text) - count_t($g[1], $my_text); if($diff >= 1) { for($j = 0;$j < $diff;$j++) $my_text .= $g[1]; } } echo $my_text;