Esta biblioteca fornece detecção simples de navegador para PHP. Ele usa um algoritmo simples e rápido para reconhecer os principais navegadores.
O pacote UserAgent foi desenvolvido para nosso sistema de proteção contra spam Gatekeeper.
PHP fornece uma função nativa para detectar o navegador do usuário: get_browser()
. Esta função requer o arquivo browscap.ini
que tem mais de 300 KB de tamanho. Carregar e processar esse arquivo afeta o desempenho do script. E às vezes, o servidor de produção simplesmente não fornece browscap.ini
.
Embora get_browser()
certamente forneça excelentes resultados de detecção, na maioria dos casos um método muito mais simples pode ser igualmente eficaz. A biblioteca FlameCore UserAgent tem a vantagem de ser compacta e fácil de estender.
Para fazer uso da API, inclua o autoloader do fornecedor e use as classes:
namespace Acme MyApplication ;
use FlameCore UserAgent UserAgent ;
require ' vendor/autoload.php ' ;
// Create a user agent object
$ userAgent = UserAgent:: createFromGlobal ();
Então os valores analisados podem ser recuperados usando os métodos getter:
$ userAgent -> getBrowserName (); // firefox
$ userAgent -> getBrowserVersion (); // 3.6
$ userAgent -> getBrowserEngine (); // gecko
$ userAgent -> getOperatingSystem (); // linux
Ao criar um objeto UserAgent
, a sequência de user agent atual é usada. Você pode especificar outra string user agent :
// Use another user agent string
$ userAgent = UserAgent:: create ( ' msnbot/2.0b (+http://search.msn.com/msnbot.htm) ' );
$ userAgent -> getBrowserName (); // msnbot
// Use current user agent string
$ userAgent = UserAgent:: create ( $ _SERVER [ ' HTTP_USER_AGENT ' ]);
// ... which is equivalent to:
$ userAgent = UserAgent:: createFromGlobal ();
Crie um arquivo chamado composer.json
no diretório do seu projeto e coloque o seguinte nele:
{
"require": {
"flamecore/user-agent": "dev-master"
}
}
Instale o Composer se ainda não o tiver presente em seu sistema:
$ curl -sS https://getcomposer.org/installer | php
Use o Composer para baixar as bibliotecas do fornecedor e gerar o arquivo vendor/autoload.php:
$ php composer.phar install
Se você quiser contribuir, consulte primeiro o arquivo CONTRIBUTING.
Obrigado aos colaboradores: