====== Utilisation de la fonction get_browser() ====== La fonction get_browser() permet d'obtenir des informations sur le navigateur de votre client. D'utilisation simple cette fonction vous permettra de réaliser des pages internet optimisées pour les capacités du navigateur de votre client. Les scripts suivants ont été testé sous Debian 7 (Wheezy), Debian8 (Jessie) et Debian 9 (Stretch) ===== A savoir ===== Pour pouvoir utiliser cette fonction il faut avant tout avoir accès au php.ini de votre serveur ou, si vous êtes en hébergement mutualisé, espérez que votre fournisseur de services l'ai activé par défaut dans sa configuration. Les explications ci-dessous sont effectuées sur un serveur dédié équipé de l'OS //Linux Debian//. Cela devrai fonctionner aussi sur un serveur //Ubuntu// sans modification. Pour les autres distributions Linux, il faudra adapté. ===== Activer la fonction ===== Pour activer la fonction get_browser(), il faut avant tout télécharger la dernière version du fichier bibliothèque sur le [[http://browscap.org/|site officiel]] du créateur((Il existe une version full et lite sur le site officiel)). Pour le télécharger directement sur votre serveur **Debian**, vous pouvez directement entrer les commandes suivantes : Le code ci-dessous est à exécuter en tant qu'utilisateur //root//. command wget "http://browscap.org/stream?q=PHP_BrowsCapINI" --output-document php_browscap.ini mkdir /etc/php5/extra mv php_browscap.ini /etc/php5/extra chown root: /etc/php5/extra/php_browscap.ini Ensuite il faut activer la fonction dans le //php.ini//. Pour cela nous éditons ce fichier à l'aide d'un éditeur genre //nano// ou //vi//. Ensuite nous dé-commentons la ligne suivante en supprimant le ; se trouvant en début de ligne et entrez l'emplacement du fichier //php_browscap.ini//. [browscap] ; http://php.net/browscap ;browscap = extra/browscap.ini devient [browscap] ; http://php.net/browscap browscap = /etc/php5/extra/php_browscap.ini Si PHP est un module d'apache, il ne faut pas oublier de redémarrer votre //daemon// APACHE avec la commande suivante : service apache2 restart Si vous utilisez //php5-fpm// vous devez relancer //Apache// et //PHP//. service php5-fpm restart service apache2 restart ===== Utilisation de la fonction ===== La syntaxe de la commande get_browser() est simple, elle est de la forme // get_browser($user_agent,$return_array); // * // $user_agent //: Vous mettez ici l'entête user agent à analyser. Par défaut, il s'agit de l'entête //user-agent// spécifié à // $_SERVER['HTTP_USER_AGENT']//. Vous pouvez si vous le désirez mettre la valeur à NULL. * // $return_array //: Si cette valeur est a //true// cette fonction retournera un tableau au lien d'un objet. ===== Exemple ===== Nous prenons le code suivant comme exemple : Ce code nous retournera un tableau de cette sorte (les valeurs vont varier selon votre navigateur): Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0 Array ( [browser_name_regex] => §^mozilla/5\.0 \(.*windows nt 6\.1.*wow64.*rv:.*\) gecko/.* firefox/8\..*$§ [browser_name_pattern] => Mozilla/5.0 (*Windows NT 6.1*WOW64*rv:*) Gecko/* Firefox/8.* [parent] => Firefox 8.0 [platform] => Win7 [win32] => [win64] => 1 [browser] => Firefox [version] => 8.0 [majorver] => 8 [frames] => 1 [iframes] => 1 [tables] => 1 [cookies] => 1 [javascript] => 1 [javaapplets] => 1 [cssversion] => 3 [minorver] => 0 [alpha] => [beta] => [win16] => [backgroundsounds] => [vbscript] => [activexcontrols] => [isbanned] => [ismobiledevice] => [issyndicationreader] => [crawler] => [aolversion] => 0 ) ===== Mise à jour ===== [09/08/2015] : Adaptation Debian 7 et 8 [17/11/2017] : Mise à jour du document et harmonisation de la page ===== Auteurs et sources ===== * Auteur : [[:user:montuy337513]] * Sources : [[http://fr.php.net/manual/fr/function.get-browser.php|php.net]], [[http://browscap.org/|Browser Capabilities Project]] ===== Navigation ===== * [[:accueil|Accueil]] * [[:gestion-site-internet]] * [[:tutoriel-javascript]] * [[:tutoriel-html]] * [[:tutoriel-php-mysql]] * [[:tutoriel-referencement-seo]]