Si, dovresti in effetti mettere i link ed i testi del link in un array.
Poi confrontare ogni riga dell'array con il nome della pagina.

Proviamo a buttare giù del codice.

Codice PHP:

// crei un array dove associ i link alle etichette dei bottoni
$array_menu = array(
 
"chi_siamo.php" => "Chi Siamo",
 
"ultime_novita.php" => "Ultime Novità",
 
"ordine.php" => "Ordine",
 
"contatti.php" => "Contatti",
);

// prelevi il nome della pagina visualizzata dalla URL
$pagina_visualizzata basename($_SERVER['PHP_SELF'];

// inizializzi l'elenco non ordinato per creare il menu
echo "<ul>";

// cicli l'array per creare le voci del menù
while(list($url$label) = each($array_menu)) {

 if (
$url == $pagina_visualizzata){
// la URL dell'array corrisponde alla pagina
// devo segnalare al CSS di associare uno stile
// particolare
echo "
     <li id=\"active\">
        <a href=\"
$url\">$label</a>
    

"

} else {
// altrimenti uso lo stile normale
echo "[*]
        <a href=\"
$url\">$label</a>
    

"

 }
}
// esco dal ciclo WHILE

// chiudo l'elenco non ordinato 
echo "[/list]"
Ho scritto al volo, e senza provare, ma dovrebbe funzionare.