2010-01-23 20 views
27

Por extraño que sea esto, no he podido encontrar una buena función de PHP en ninguna parte que haga un análisis inteligente de una cadena de agente de usuario. Lo busqué en Google durante aproximadamente 20 minutos ahora.¿Código para analizar la cadena de agente de usuario?

Ya tengo la cadena, solo necesito algo que lo corte y me proporcione al menos navegador/ver/os.

¿Conoces un buen fragmento en cualquier lugar?

+0

Sí, sé que puedo escribir la mía, pero realmente no tengo tiempo en este momento. Necesito algo que pueda enchufar y usar para terminar este proyecto. – Spot

+0

get_browser() es muy viejo y lento. Utilice uno de los analizadores aquí http://github.com/ThaDafinser/UserAgentParser – ThaDafinser

+0

advertencia contra el uso de la biblioteca sugerida arriba (TheDafinser). Parece funcionar al enviar una solicitud a otro sitio (http://www.useragentstring.com/) que, como decimos, está ABAJO !!!! Como lo estaba usando en alguna parte, ralentizaba mi sitio como si nadie lo hiciera, ya que la solicitud tenía que ejecutarse hasta el tiempo de espera. Advierta – gthuo

Respuesta

22

La función get_browser() ha estado disponible en PHP durante bastante tiempo.

El manual de PHP es libre, se puede descargar en varios formatos y ver en línea (con comentarios)

+4

Este sería un ejemplo perfecto de cómo permanecer despierto durante más de dos días puede afectar la memoria y hacer preguntas extremadamente estúpidas sobre funciones que ya conoce. :) Gracias – Spot

+0

La publicación a continuación (https://github.com/garetjax/phpbrowscap) es lo que sugiere el manual de PHP. – Jeremy

+0

¿Hay alguna penalización de rendimiento al habilitar la función 'get_browser()' en php? –

11

https://github.com/browscap/browscap-php - esto es una biblioteca independiente que tiene como objetivo reemplazar get_browser función. Para hostings compartidos, parece ser una mejor opción.

Obras en: PHP 5

0

Pruebe ThaDafinser/UserAgentParser es una abstracción para muchos analizadores de agente de usuario disponibles.

Así que si usted no está satisfecho con uno - sólo cambiar a otro (o combinarlos)

Puede try it out here

+0

que me dio muchos problemas cuando el sitio web donde lanzan las solicitudes de procesamiento estaba inactivo. Aminoró mi sitio mucho. – gthuo

+0

Entonces podría usar un analizador remoto como "http://useragentstring.com/" (que últimamente está inactivo). Por supuesto, eso ralentizará su sitio web. Puedes usar un analizador local cuando dependes de la velocidad. Ver https://github.com/ThaDafinser/UserAgentParser#local-providers – ThaDafinser

0

Hay una biblioteca de clases PHP me enteré, y ha funcionado tan bien para yo. Está en el enlace de abajo.

https://www.toms-world.org/blog/parseuseragentstring

Es ligero y hace lo que quería (navegador, la versión, el sistema operativo móvil/PC, y mucho más) de una manera memoria simpático.

Cuestiones relacionadas