Ciao,

scrivo perché è da qualche ora che sbatto la testa su questo problema, e non ne sono venuto ancora a capo, allora ho pensato di affidarmi a qualcuno di un po' più esperto.

In poche parole faccio una query ad una tabella, recupero un campo (tipo BLOB).
La connessione è settata a utf8, il character encoding anche, e collation utf8_bin.
La pagina di output ha anch'essa charset=utf-8.
Prima di essere inserito nella tabella uso la funzione mysql_real_escape_string();

Recupero il campo, che contiene un "\n", e provo un echo: nulla, quel "\n" resta.
Provo in tutti i modi a sostituirlo, ma non ne vuole sapere di diventare un ritorno a capo, se ne resta lì bello bello come un \n testuale.
Ciò che non capisco è perché resti tale senza diventare invece un ritorno a capo (intendo nel codice sorgente o se inserito in una textarea).
Inoltre se provo un mb_detect_encoding mi dice 'ASCII'!

Probabilmente sto anche facendo un errore stupidissimo, ma proprio non capisco il perché questo problema.
Per ora uso come workaround:
Codice PHP:
$text preg_replace("#\\\\\\\\n#""\n"$text); 
Ma resta comunque il quesito del perché non funzioni normalmente.

Grazie per le delucidazioni. :]