Pré-requis

POO en PHP

6.Le langage PHP

6.12.Les variables prédéfinies

6.12.4.User-Agent

6.12.4.4.Analyse du User-Agent avec Joomla-Framework

Si vous avez installé[comment?] Joomla-Framework, vous pouvez l'utiliser pour extraire les informations pertinentes du User-Agent, plus sûrement que par le code donné précédemment.
rem
  • Seuls les fichiers base/object.php et environment/browser.php sont nécessaire pour ce chapitre.
warning Pour que ces fichiers puissent être utilisés, la constante JPATH_BASE doit être définie (REM: Peut importe sa valeur pour ce chapitre).
Ce framework contient en effet une classe baptisée JBrowser() possédant, entre autres, les méthodes:
  • getBrowser() qui retourne l'identifiant du navigateur (ex: 'msie', 'mozilla', 'opera', 'konqueror', 'palm', 'lynx', etc.)
  • getVersion() qui retourne la version du navigateur et se décline en getMajor() et getMinor() qui retournent respectivement le numéro majeur et mineur de version.
  • isRobot() qui retourne TRUE si le navigateur est en fait un robot connu.
  • getPlatform() qui retourne l'identifiant du système d'exploitation ('win', 'unix' ou 'mac')
<?php
require_once("include_path_inc.php");

define('JPATH_BASE', '');

require_once("base/object.php");
require_once("environment/browser.php");

$ua = new JBrowser();

echo "Navigateur:".$ua->getBrowser()."<br />";
echo "   Version:".$ua->getVersion()."<br />";
echo "   Robot? :".($ua->isRobot()?"oui":"Peut-être pas")."<br />";
echo "OS:".$ua->getPlatform()."<br />";
?>
avec par exemple
<?php 
// Adaptez les chemins de recherche a votre environnement
set_include_path(get_include_path().PATH_SEPARATOR.
                 // Si Joomla-Framework est au meme niveau que ce fichier
                 dirname(__FILE__)."/libraries/joomla".PATH_SEPARATOR.
                 // Si la biblotheque Joomla-Framework est a la racine du site
                 $_SERVER["DOCUMENT_ROOT"]."/libraries/joomla".PATH_SEPARATOR.
                 // Si la biblotheque Joomla-Framework est au niveau superieur
                 $_SERVER["DOCUMENT_ROOT"]."/../libraries/joomla".PATH_SEPARATOR
                 );
                 ?>
Qui donne dans votre cas:
Ici vous pouvez apprendre :
1.Introduction
2.Installation de PHP
3.Exécuter un script PHP
4.La configuration de PHP
5.L'environnement de développement
6.Le langage PHP
6.1.Introduction
6.2.Mon premier script
6.3.La syntaxe
6.4.Les boucles (for, while, foreach, do) en PHP
6.5.Les tableaux (array) en PHP
6.6.Les fonctions
6.7.Include
6.8.Programmation orientée objet
6.9.Les fonctions de manipulation de tableaux
6.10.Les dates
6.11.Fichiers et répertoires
6.12.Les variables prédéfinies
6.12.1.Introduction
6.12.2.Les principales variables
6.12.3.Détection de la langue du visiteur (Accept-Language)
6.12.4.User-Agent
6.12.4.1.Présentation
6.12.4.2.Détection du navigateur utilisé
6.12.4.3.Détection du système d'exploitation
6.12.4.4.Analyse du User-Agent avec Joomla-Framework
6.13.Les formulaires
6.14.Validation de formulaire
6.15.Captcha (anti robot) pour formulaire
6.16.Utilisation de la librairie graphique
6.17.JpGraph pour tracer courbes et diagrammes
6.18.Utilisation de bases de données avec PHP
6.19.Upload de fichier
6.20.Les cookies
6.21.Les sessions
6.22.Parser un document XML
6.23.Génération de documents PDF en PHP
6.24.Envoyer un mail
6.25.Créer un webmail avec IMAP
6.26.Droits utilisateurs: chmod 777
6.27.Localization (l10n) et Traduction
7.Internationalisation (i18n) et encodage en PHP
8.Les débogueurs
9.Programmer en PHP en toute sécurité
10.Bibilothèque PEAR
11.Zend Framework 2 et 3
12.Installation de Zend Framework 2
13.Joomla
14.Composer
15.PHPUnit
16.PHPDocumentor
17.Exemples de scripts PHP
18.Erreurs fréquentes et les solutions
19.Archives
Forum PHP
Version imprimable: imprimer