Salve, sto usando questo codice per gestire i tag QUOTE di un forum che sto creando. In particolare vorrei che i quote cambiassero colore alternativamente a seconda della loro profondità
Questo codice funziona bene se per ogni livello di profondità c'è un solo quote, altrimenti si comporta in modo anomalo...ecco uno screenshot di ciò che accade (ho scritto il nome della classe del div, tra parentesi quello che invece mi aspettavo)Codice PHP:
$bbTag="#\\[QUOTA\\](.*)(?!\\[QUOTA\\])\[/QUOTA\\]#Usi";
$k=0;
while(preg_match($bbTag, $text)!=0){
if($k%2==0){
$quote="even";
} else {
$quote="odd";
}
$text = preg_replace($bbTag, "
<div class=\"quote$quote\">\\1</div>", $text);
$k++;
}
http://www.mjzone.net/Files/evenodd22532.png
Purtroppo non riesco a capire quale sia l'ordine in cui i tag vengono controllati
Preferibilmente preferirei non dover cambiare il codice utilizzato per modificare i tag innestati, visto che sono arrivato a questo dopo due giorni di sclero ed è l'unica soluzione che sia riuscito a creare che gestisca decentemente i tag innestati