PHP è un linguaggio di programmazione molto versatile che permette al web server di servire contenuto in modo dinamico ai visitatori.PHP può individuare e identificare il tipo e la versione del browser che il visitatore ha usato per navigare sulla pagina, in modo che potrebbe mostrare contenuto che è specifico per un solo browser.Questa cosa può servire particolarmente per rendere un sito compatibile anche con vecchi browser.
La variabile globale $_SERVER di PHP offre vari informazioni sul server e sull’ambiente di esecuzione, includendo anche l’elemento HTTP_USER_AGENT che contiene informazioni sul browser del utente, che può essere usato per identificare il web browser usato per accedere alle pagine di un sito.Un esempio di user-agent può essere questo:
Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543 Safari/419.3
Ogni stringa di un utente ha un unico identificatore che mostra quale web browser sta facendo la richiesta alla pagina web.Quindi, è possibile di individuare un specifico browser tramite il confronto del valore di $_SERVER[‘HTTP_USER_AGENT’] con la variabile specifica del browser dell’utente.
Ecco un esempio di codice che può essere usato in PHP per individuare il web browser:
<?php
$user_agent = $_SERVER['HTTP_USER_AGENT'];
if (preg_match('/MSIE/i', $user_agent)) {
echo "Internet Explorer";
} else {
echo "Non-IE Browser";
}
?>
Questo script individuerà se il visitatore usa Internet Explorer o meno.Il codice può essere ampliato per individuare anche gli altri browser usando il condizionale elseif.Per verificare gli altri browser, devi solo sostituire MSIE con il nome dell’altro browser.Ecco alcuni più popolari:
Internet Explorer: MSIE Mozilla Firefox: Firefox Google Chrome: Chrome Apple Safari: Safari Opera: Opera Netscape Navigator: Netscape Flock: Flock Lynx: Lynx
E’ possibile anche usare “strtolower” per trasformare il $user_agent in minuscolo in modo che nessun script di PHP manchi i browser che non usano nomi standard nell’ user agent.In questo caso, ricordati di fare il confronto anche con il nome in minuscolo, come msi, firefox, ecc.
