Grazie Sky...
molto interessante il tuo modo... (daccordissimo su escape \n)


Correggo questa riga:

Codice PHP:
 $menu .= " <li{$class}>[url="'.$link.'"]'.$text."[/url]\n"; 
in questo modo (senza apici e punto prima e dopo le varie $ ):

Codice PHP:
 $menu .= " <li{$class}>[url="$link"]$text[/url]\n"
perché mi restituisce:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\xampp\htdocs\MENU_CORRENTE\tre\menu.php on line 12
(che è proprio quella riga)

Ma non mi è affatto chiaro il perché... né perché mi dà errore né perché ce le hai messe...

A te (e ad altri) magari è invece chiaro... se ti/vi avanzano 5 min. mi spieghi in due parole?

Inoltre: ma perché c'é il puntino qui? $menu .= "

Poi: ganzo l'EOF !!! mai visto prima...

Infine, sempre a vantaggio di chi vorrà utilizzarlo,
posto il tuo codice corretto qui di seguito, ma se ci fossero altre correzioni (o controcorrezioni rispetto alle mie) ti prego di segnalarle...

Codice PHP:
<?php
# pagine menu con relativi link
$pagine = array ('prima' => 'prima.php','seconda' => 'seconda.php','terza' => 'terza.php''quarta' => 'quarta.php');

# Inizializziamo la variabile contenente i tag[*]
$menu NULL;

#crea menu
foreach ($pagine as $text => $link){
#verifica se la pagina in cui siamo è quella del menu e associa $class="link_attivo" (selezionato) $class="link_neutro"; (non selezionato)
$class = (basename($_SERVER['PHP_SELF'])==$link) ? ' class="link_attivo"' NULL;
$menu .= " <li{$class}>[url="$link"]$text[/url]\n";
}
echo
'[/list]
'
;

echo <<<EOF
<ul id="nav">
$menu[/list]
EOF;

?>
Ancora grazie...
buonanotte a tutti