Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue

codeur:module:multilangue [2008/06/10 12:02]
jpb
codeur:module:multilangue [2008/06/10 18:51] (Version actuelle)
jpb
Ligne 3: Ligne 3:
  
 Ce tutorial suppose donc que vous ayez des connaissances en PHP. Ce tutorial suppose donc que vous ayez des connaissances en PHP.
 +
 +
 +
 +
 +
 +
  
  
Ligne 9: Ligne 15:
  
 Nous vous conseillons de créer un fichier pour chaque langue, et dans chaque fichier déclarer une fonction de traduction.  Nous vous conseillons de créer un fichier pour chaque langue, et dans chaque fichier déclarer une fonction de traduction. 
-* Règle de nomage des fichiers langues : à ce jour le nom du fichier lang doit être le nom de la langue en anglais ex : french, spanish, chinese...etc suivit de l'extension .php +* Règle de nommage des fichiers langues : à ce jour le nom du fichier lang doit être le nom de la langue en anglais ex : french, spanish, chinese...etc suivit de l'extension .php 
  
 **Exemple:** fichier /modules/monModule/lang/english.php **Exemple:** fichier /modules/monModule/lang/english.php
Ligne 22: Ligne 28:
         default: $tmp='Translation undefined: <b>'.$str.'</b>'; break;         default: $tmp='Translation undefined: <b>'.$str.'</b>'; break;
     }     }
-    return($tmp);+   if (cur_charset=="utf-8") { 
 +      return utf8_encode($tmp); 
 +   } else { 
 +      return ($tmp); 
 +   }
 } }
 ?></code> ?></code>
Ligne 32: Ligne 42:
 /********************************************************/ /********************************************************/
 function mod_translate($str) { function mod_translate($str) {
-    return($str);+if (cur_charset=="utf-8") { 
 +    return utf8_encode($str); 
 + } else { 
 +    return ($str); 
 + }
 } }
 ?></code> ?></code>
  
 Il est important de noter que le fichier french.php ne contient en fait aucune traduction puisque la langue des messages se trouvant dans le code PHP de votre module est le Français (logique donc). Il est important de noter que le fichier french.php ne contient en fait aucune traduction puisque la langue des messages se trouvant dans le code PHP de votre module est le Français (logique donc).
 +
 +
 +
  
 ===== Traduire ===== ===== Traduire =====
Ligne 48: Ligne 65:
 /* Mon module qui dit bonjour et au revoir */ /* Mon module qui dit bonjour et au revoir */
 /*******************************************/ /*******************************************/
 +if (file_exists('modules/'.$ModPath.'/lang/'.$language.'.php')) {
 include_once('modules/'.$ModPath.'/lang/'.$language.'.php'); include_once('modules/'.$ModPath.'/lang/'.$language.'.php');
 +}
 +else {
 +include_once('modules/'.$ModPath.'/lang/french.php');
 +
 +
 include('header.php'); include('header.php');
 echo mod_translate('Bonjour').'<br />'; echo mod_translate('Bonjour').'<br />';
Ligne 54: Ligne 77:
 include('footer.php'); include('footer.php');
 ?></code> ?></code>
 +La condition : if (file_exists()), est nécessaire pour éviter la génération d'une erreur php en cas d'absence du fichier langue demandé.

Index


Utilisateur

Vous n'ètes pas identifié. Vous pouvez vous inscrire ou vous connecter.



Page