我正在使用多语言脚本来改变语言。现在,当我使用默认语言(英语)时,我无法从一种语言进行更改
该网站看起来像:
example.com ( Main directory)
example.com/fr/
example.com/es/
当我在 example.com/fr/blabla/index 并且我想去 example.com/es/blabla/index 时,它工作正常。
但是当我在 example.com/blabla/index 并且我想去 example.com/fr/blabla/index 时。我被重定向到 example.com/fr/index
我在用着:
<?php
function switchLanguage($lang) {
$u = explode('/', $_SERVER['REQUEST_URI']);
$u[1] = $lang;
return implode('/', $u);
}
?>
所以逻辑上我没有重定向到正确的路径,因为没有目录/eng。
我在想是否可以使用数组重写 url?像这样的东西:
<?php
function switchLanguage($lang)
$array1 = array(' ', $_SERVER['REQUEST_URI']);
$array2 = array('$lang', ' ');
$newArray = array_combine($array1, $array2);
foreach ($newArray as $key ) {
echo "$key $value";
}
?>
但是我如何才能获得 url 中的值或我哪里出错了。
使用数据库或 .ini 和 geoip 缓存不是一个选项