Risolto. Se qualcuno è interessato ecco la mia soluzione (necessita di Simple HTML DOM PARSE e di Geshi o, più in generale, di un parser html e di un syntax highlighter).
Posto un esempio:
------- contenuto della text area nella pagina ----------
Ciclo for in c++
<code lang='cpp'>
for (int i=0;i<10;i++)
do_the_job();
</code>
---------------------------------------------------------
codice:
<?php
include("simplehtmldom/simple_html_dom.php");
include("geshi/geshi.php");
$html = str_get_html($_POST["textarea"]);
$retv = $html->find('code[lang]',0);
$geshi = new Geshi($retv->innertext,$retv->lang);
$retv->innertext = "<div style='border: solid black 1px'>".$geshi->parse_code()."</div>";
$content = $html;
?>
$content è la variabile con cui faccio echo nella textarea.
Trovo la porzione di testo contrassegnata come codice, faccio fare a geshi il parsing e sostiutisco il testo originale con quello formattato