Originariamente inviato da Ajeje Brazof
Devo scrivere un codice che trasformi il testo di un post di un forum da così:

ciao a tutti

vi volevo dire che

torno la settimana prossima

a:

ciao a tutti
vi volevo dire che
torno la settimana prossima

In pratica non deve togliere tutt i ritorni a capo, ma togliere i ritorni a capo solo se intervallati da testo spazio testo spazio testo
Prova così:

Codice PHP:
$string "ciao a tutti

vi volevo dire che

torno la settimana prossima."
;

// questo ti conviene farlo prima di inserire il messaggio nel db:
while (stristr($string"\n\n") !== false) {
   
str_replace("\n\n""\n");
}
// questo lo farai quando stampi il messaggio ripescato dal db:
echo nl2br($string); 
Considerando la versione di PHP <= 4.3.x (altrimenti stristr() non sarebbe nativa e l'operatore !== non funzionerebbe) e che tu sia su piattaforma Linux (altrimenti per gli "a capo" Windows utilizza carriage returns + newline, cioè "\r\n"; in tal caso il controllo nel wihle e il replace andrebbero modificati).