Quelque chose comme ça fonctionne très bien:
Langs.php
<?
// check if language switch as been set at url var
if ($_GET["lang_change"]) {
$_SESSION['session_name']["lang"] = $_GET["lang_change"];
}
// set value to lang for verification
$active_lang = $_SESSION['session_name']["lang"];
// verify $lang content and set proper file to be load
switch ($active_lang) {
case 'prt':
$lang_file = 'prt.php';
break;
case 'gbr':
$lang_file = 'gbr.php';
break;
case 'fra' :
$lang_file = 'fra.php';
break;
case 'esp' :
$lang_file = 'esp.php';
break;
case 'deu' :
$lang_file = 'deu.php';
break;
default:
$lang_file = 'gbr.php';
}
// load proper language file for site presentation
include_once ('$lang_file);
?>
LANG GBR FICHIER (gbr.php)
define("LANG_PAGETITLE_HOMEPAGE", 'Homepage');
define("LANG_BTN_KNOW_MORE", 'know more');
MÉTHODE Changement de langue (exemple url)
<a href="index.php?lang_change=gbr" title"">USE ENG</a>
Fondamentalement, vous avez des fichiers PHP avec des constantes, chaque fichier avec un lang.
Lors d'un clic, vous définissez une URL var (ex: lang_change = lang).
Cela forcera la page reload, et le fichier langs.php comprennent au dessus de votre index.php chargera la langue sélectionnée ...
Si vous avez besoin d'explications à ce sujet, laissez un commentaire et je Je vais vous envoyer un échantillon de travail!
Ps: les variables de session figurant dans ce code est utile pour l'interaction avec les systèmes de connexion, ou tout simplement pour éviter d'avoir les paramètres d'URL ...
double possible de [ce qui est la meilleure façon de mettre un système de traduction sur le site php?] (Http://stackoverflow.com/questions/2344383/what-is-the-best-way-to-put-a -traduction-system-in-php-site) – Gordon
Essayez d'utiliser $ _SERVER [ "HTTP_ACCEPT_LANGUAGE"] et faire le menu déroulant/commande manuelle en option. – mario