PHP多语言站点 [英] PHP multilanguage site
本文介绍了PHP多语言站点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用基于SESSIONS的PHP创建多语言网站,例如 untiny.com
I want make multilanguage site with PHP based on SESSIONS like this site untiny.com
我尝试使用此代码,但不起作用:
I try with this code but not working :
<?
session_start();
$lang = $_GET['lang'];
if (!isset($lang)) {
include ('ar/language.php');
$lang = "ar";
}
else if ($lang == "en" ) {include ('en/language.php'); $SESSION["lang"] = "en"; header("Location: http://it2.in/");}
else if ($lang == "ar" ) {include ('ar/language.php'); $SESSION["lang"] = "ar"; header("Location: http://it2.in/");}
else if ($lang != "ar" || "en") {header("Location: http://it2.in/"); header("Location: http://it2.in/");}
?>
任何人都可以帮助我. 谢谢
Anyone can help me. Thanks
谢谢大家. 但是@现在什么都没有用,还有其他想法吗?
Thank you all. But @ now nothing working, Are there other ideas.
推荐答案
可能您的问题在最后一行.它应该像这样工作:
Probably your problem is in last line. It should work like:
else if ($lang != "ar" || $lang != "en") {header("Location: http://it2.in/");}
我还建议您创建一个单独的数组来存储可用的语言
Also I suggest you to create a separate array to store available languages
$known_languages = array('en', 'ar'); ## just add new language here when you need
session_start();
## if language is stored in SESSION then use it, otherwise use GET params
if (array_key_exists('lang', $_SESSION)) {
$lang = $_SESSION['lang'];
include($lang.'/language.php');
## echo "You current language is <strong>$lang</strong>";
include("page.php");
}
else {
$lang = $_GET['lang'];
## if language is not set or is not available, then use default value
if (!isset($lang) || !in_array($lang, $known_languages) {
$lang = "ar";
}
include($lang.'/language.php');
$SESSION["lang"] = $lang;
header("Location: http://it2.in/");
}
这篇关于PHP多语言站点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文