Hola a todos,
 
necesito hacer una detección del navegador que está usando el visitante de mi web. Por lo que he leido la función get_browser() me podía ser de ayuda pero al ejecutarla el script me da un error 
Código:
 Warning: get_browser(): browscap ini directive not set. in E:\web\checkBrowser.php on line 4
  que parece ser debido a que no está configurado correctamente la opción de configuración browscap en php.ini. Para intentar resolver el problema me he creado este script:  
Código:
 <?
echo checkBrowser();
function checkBrowser(){
	$agent = strtolower($_SERVER["HTTP_USER_AGENT"]);
	echo " $agent - ";
	$Arr_brow = array("amaya", "firefox", "maxtor", "mozilla", "msie", "opera");	
	$found = false;
	while(list($c, $v) = each($Arr_brow)){
		if(strstr($agent, $v) and !$found){
			$found = true;
			return $v;
		}
	}
}
?>
  que parece funcionar bien ... pero sólo lo parece. Os pongo unos ejemplos y lo veréis claro. 
Si uso Firefoz como navegador obtengo:
$agent -> mozilla/5.0 (windows; u; windows nt 5.0; es-es; rv:1.8.0.3) gecko/20060426 firefox/1.5.0.3
resultado de la detección -> firefox (
correcto) 
Si uso Opera:
$agent -> opera/9.00 (windows nt 5.0; u; en)
resultado de la detección -> opera (
correcto) 
Si uso Internet Explorer:
$agent -> mozilla/4.0 (compatible; msie 6.0; windows nt 5.0; .net clr 1.1.4322)
resultado de la detección -> mozilla (
incorrecto) 
¿Cómo podría hacerlo bien? Muchas gracias por la ayuda 
 
P.D. las pruebas las estoy haciendo en una máquina con Windows y luego lo publicaré en una con Linux (esto no importa, ¿verdad?) Así todo, ¿cómo podríamos hacer la detección sin get_browser()?