Pag 1 [Pag 2] [Home Page]
Esempio di barra di navigazione
Si riporta quì di seguito un semplice script per
la creazione di una barra di navigazione "intelligente".
Ossia, di una barra
di navigazione che
tenga traccia della pagina
corrente, escludendola automaticamente dalle pagine visitabili.
<?php
$links = array ("index.html" => "Home Page",
"file1" => "pag 1",
" file2"=>"pag 2",
"file3" => "pag 3",
"file4" => "pag 4");
$pagina_corrente= basename ($PHP_SELF);
foreach ($links as $url => $page)
{
if ($url = = $pagina_corrente)
{
print "<b> $page </b>";
}else
{
print "[<a href=\" $url \">$page</a>]";
}
}
?>
Nella prima parte del codice è stato inizializzato un array
associativo in cui: le chiavi rappresentano il percorso dei file con cui
si vuole creare il collegamento mentre i valori il
nome da associarvi.
E' stata di seguito inizializzata la variabile
$pagina_corrente, che, con l'utilizzo della funzione
basename($PHP_SELF), servirà
all'interprete php per risalire alla posizione del file corrente.
La parte successiva del codice è rappresentata da un ciclo
foreach tramite il quale
l'interprete può passare in rassegna tutti gli elementi dell'array.
Infine all'interno del ciclo stesso è stata inserita un'istruzione
condizionale if seguita
dall'alternativa else che
rappresentano il fulcro del nostro script.
Difatti quando, nello scorrere l'array,
l'interprete trova l'elemento che soddisfa la condizione "if", verrà
visualizzato nel browser il nome della pagina corrente in grassetto.
In tutti gli altri casi verranno visualizzati,tra parentesi quadre,
i nomi dei links
con cui la pagina corrente è collegata.
Va, infine, ricordato che l'istruzione
foreach è stata introdotta con php4
nella versione precedente bisognava utilizzare il ciclo
while .
Si riporta di seguito il codice equivalente in php3:
<?php
$links = array ("index.html" => "Home Page",
"file1" => "pag 1",
" file2"=>"pag 2",
"file3" => "pag 3",
"file4" => "pag 4");
$pagina_corrente= basename ($PHP_SELF);
while (list ($url,$page) = each ($links))
{
if ($url = = $pagina_corrente)
{
print "<b> $page </b>";
}else
{
print "[<a href=\" $url \">$page</a>]";
}
}
?>