La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.

Présentations similaires


Présentation au sujet: "420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1."— Transcription de la présentation:

1 420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1

2 Définition  Internationalisation Concevoir un site qui est suffisamment malléable pour pouvoir s’adapter en fonction de plusieurs langue/région. Par exemple, la devise n’est pas toujours en dollar canadien, mais s’ajuste en fonction de la région d’un usager. Idem pour la langue. Sans avoir à changer le code, l’application peut se visionner en français, en anglais, en espagnol, etc. 2

3 Définition (suite)  On dit qu’un site est localisé lorsqu’il peut s’adapter en fonction d’une langue de l’usager et de sa position géographique (pays, région) Exemple : ○ Locale : fr_CA Français canada On voit le site en Français, les dates sont en format francophone, on voit l’argent en dollar canadien, etc. 3

4 Faire un site en plusieurs langues – mauvaise méthode  Faire un copier/coller des pages Web dans différents répertoires est probablement la pire méthode à utiliser: en/(pages Web en anglais) fr/(pages Web en français)  Ne jamais utiliser cette méthode, au risque d’y perdre sa réputation ! 4

5 Faire un site en plusieurs langues – bonne méthode  1- Faire des fichiers de langues. Exemple : ○ en.xml ○ fr.xml  2- Garder la langue de l’utilisateur dans une variable de session Exemple : $_SESSION[‘lang’] = ‘fr’;  3- Créer une classe permettant de lire les valeurs du fichier XML. Cette classe pourra ouvrir le bon fichier, selon la langue de l’usager (ex: en.xml). 5

6 Exemple : D’abord faire les fichiers de langues (en UTF-8 !) Fichier lang/fr.xml Le titre fr Le texte en fr Fichier lang/en.xml English title English text 6

7 Faire la classe permettant d’ouvrir et de parcourir les fichiers de langues (xml) <?php class Translator { private $xmlFile; public function __construct($lang) { $this->xmlFile = new SimpleXMLElement("lang/". $lang. ".xml", NULL, TRUE);} public function read($page, $node) { return $this->xmlFile->$page->$node; } ?> 7

8 Finalement, instancier et utiliser la classe… <?php require_once("Translator.php"); $translator = new Translator("en"); echo $translator->read("index", "title"). " "; echo $translator->read("index", "text"); ?> 8


Télécharger ppt "420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1."

Présentations similaires


Annonces Google