Blogia
Angel

Detectar navegador de internet mediante Php

$_SERVER['HTTP_USER_AGENT'] sirve para crear una función que dice el nombre del explorador de internet que usa el cliente.

Podriamos hacer una función como la siguiente y llamarla de esta manera:

<?php echo NavegaI($_SERVER['HTTP_USER_AGENT']) ?>

La función seria:

<?php
function NavegaI($nav_usu) {
$navegadores = array(
'Mozilla Firefox'=> '(Firebird)|(Firefox)',
'Mozilla'=>'Gecko',

'Opera' => 'Opera',
'Galeon' => 'Galeon',
'Lynx' => 'Lynx',
'Netscape' => '(Mozilla/4.75)|(Netscape6)|(Mozilla/4.08)|(Mozilla/4.5)|(Mozilla/4.6)|(Mozilla/4.79)',
'Konqueror'=>'Konqueror',

'Internet Explorer 7' => '(MSIE 7.[0-9]+)',

'Internet Explorer 8' => '(MSIE 8.[0-9]+)',

);
foreach($navegadores as $navegador=>$pattern){
if (eregi($pattern, $nav_usu))
return $navegador;
}
return 'Desconocido';
}
?>

Podemos poner todos los exploradores que queramos siempre y cuando sepamos el nombre que nos dara al preguntarle, por ejemplo, preguntandole a las diferentes versiones de Internet Explorer dirá "MSIE", Firefox dirá "Firebird", o "Firefox"...


4 comentarios

Angel -

A mi me funciona nombrandolo "MSIE 8.0", o como lo tengo escrito alli arriba, no se porque no te funcionara, cuando se use más el internet explorer 8 seguro que alguien encuentra solución

mo -

ya probe con eso también, y sigue sin detectarlo, me dice desconocido :S

Angel -

Deveria detectarlo como MSIE8.0 o IE 8

mo -

hola, yo queria detectar algunos de los navegadores, y este codigo me sirvio para algunos, pero no con el explorer, yo tengo el explorer8 y me tira desconocido, me gustaria saber que podria hacer. gracias!