get_browser() intenta determinar las capacidades del navegador del usuario. Para ello consulta el archivo de información del navegador, browscap.ini. Por defecto, se utiliza el valor de HTTP_USER_AGENT; sin embargo, puede alterar este comportamiento (es decir, consultar la información de otro navegador) pasando el parámetro opcional agente_usuario a get_browser().
La información se devuelve en un object, el cual contendrá varios elementos de datos que representan, por ejemplo, los números de versión mayor y menor del navegador y la cadena ID; valores TRUE/FALSE para características como los frames, JavaScript, y cookies; y así sucesivamente.
Aunque browscap.ini contiene información sobre muchos navegadores, depende de actualizaciones del usuario para mantener la base de datos al día. El formato del archivo es bastante auto-explicativo.
El siguiente ejemplo muestra como se puede listar toda la información disponible sobre el navegador del usuario.
Para que ésto funcione, su opción de configuración browscap en php.ini debe apuntar a la ubicación correcta del archivo browscap.ini en su sistema. browscap.ini no hace parte de la distribución de PHP, pero puede encontrar un archivo browscap.ini actualizado aquí. Por defecto, la directiva browscap se encuentra comentada.
El valor cookies simplemente quiere decir que el navegador mismo tiene la capacidad de aceptar cookies y no quiere decir que el usuario haya habilitado el navegador para que acepte cookies o no. La única manera de probar si las cookies son aceptadas es definir una con setcookie(), recargar, y chequear el valor.
Nota: En versiones anteriores a PHP 4.0.6, tendrá que pasar el agente de usuario a través del parámetro opcional agente_usuario si el valor de la directiva register_globals es off. En este caso, debe pasar $HTTP_SERVER_VARS['HTTP_USER_AGENT'].