我想用3种语言制作我的网站。我做了一个简单的系统来改变语言。
页面
//define default lang
<div id="sitelanguage"><?php include "lang/pl.php"; ?></div>
// example of using lang
<li class="menu_glowne"><?php echo $text["menu_naszemarki"]; ?></li>
语言文件(例如pl.php)
<?php
$text["menu_manifest"] = "MANIFEST";
$text["menu_naszemarki"] = "NASZE MARKI";
$text["menu_wspolpraca"] = "WSPÓŁPRACA";
$text["menu_kontakt"] = "KONTAKT";
?>
以及将语言更改为en.php 的简单jQuery代码
$('#langen').click(function () {
$('#sitelanguage').html('<?php include "lang/en.php"; ?>');
location.reload();
});
现在,是提问的时候了。为什么这不起作用?)
PHP在服务器上执行,javascript在客户端上执行,因此您需要在服务器端执行站点语言,例如,如果用户选择了默认语言之外的其他语言,则需要设置cookie。此外,一定要把英语作为基础语言。
<a href="?lang=english">English</a> <a href="?lang=polish">Polish</a> <a href="?lang=danish">Danish</a>
然后在所有文件中包含"lang.php",并让lang.php包含类似的内容
if( !empty( $_GET['language'] ) )
{
$language = $_GET['language']
setcookie("language", $language, time()+3600*24*365);
} else
{
$language = (empty($_COOKIE['language']))?'english':$_COOKIE['language'];
}
switch( $language )
{
case "english":
include "language/english.php";
break;
case "polish":
include "language/polish.php";
break;
case "danish":
include "language/danish.php";
break;
}