多言語スクリプトを使用して、言語から変更しています。デフォルトの言語(英語)を使用しているときに、言語から変更するのに問題があります
サイトは次のようになります。
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キャッシングを使用することはオプションではありません