Base de conocimientos
1 000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!
Utilizar el archivo browscap.ini
Esta guía presenta la función del archivo browscap.ini, que PHP utiliza para identificar ciertas características de un navegador web (nombre, versión, sistema operativo y capacidades) a partir de su encabezado HTTP User-Agent.
Hoy en día, el uso de browscap.ini está orientado principalmente a garantizar la compatibilidad con aplicaciones existentes. Para los nuevos desarrollos, generalmente se prefieren métodos más modernos.
Uso con la función get_browser()
La función nativa de PHP get_browser() requiere acceso a un archivo browscap.ini actualizado para identificar las características del navegador que realizó la solicitud.
En los servicios de alojamiento web de Infomaniak, este archivo suele estar disponible en la siguiente ubicación:
/opt/php/lib/php/browscap.iniSi es necesario, puede verificar su contenido utilizando el siguiente script:
<?php
header('Content-Type: text/plain');
$file = '/opt/php/lib/php/browscap.ini';
if (file_exists($file)) {
echo file_get_contents($file);
} else {
echo 'Archivo no encontrado.';
}Debido a su tamaño y al costo de su carga, el uso de browscap.ini puede afectar el rendimiento de las aplicaciones que dependen de get_browser().
Alternativas recomendadas
Para los nuevos proyectos, generalmente es preferible utilizar soluciones más adaptadas a las prácticas actuales del desarrollo web:
- Bibliotecas PHP instaladas con Composer, como
matomo/device-detectorowhichbrowser/parser, que ofrecen una detección de navegadores y dispositivos más completa y actualizada. - Indicadores del cliente User-Agent (UA-CH), cuando el navegador los admite, para obtener información estructurada a través de los mecanismos previstos por los estándares HTTP actuales.
- Detección de funciones (Feature Detection), verificando directamente la disponibilidad de una función (por ejemplo, en JavaScript o con la regla CSS
@supports) en lugar de deducir el comportamiento a partir del navegador utilizado.
Enlace a esta FAQ: https://faq.infomaniak.com/505
¿Le ha sido útil esta FAQ?