我正在尝试设置,我认为是一个简单的语言切换.我以为我会使用PHP cookie,但它们的表现并不像预期的那样.
我已经阅读了一些cookie教程,并在StackOverflow上查看了一些类似的示例,但我必须遗漏一些东西,因为它无法让它正常工作.
我通过将其作为URL变量(lang = en或lang = ru)传递来设置语言.一切似乎都很好.但是,我现在设置cookie的代码似乎落后了一步,所以最初它没有任何价值(我希望它默认为'en'),然后如果用户点击'ENG'按钮它仍然没有值,然后如果用户点击俄语,则值显示为'en',然后如果我再次单击'ENG'按钮,则值显示为'ru'.
这是我拼凑的代码:
if( $_GET['lang'] ) {
$lang = (string)$_GET['lang'];
setcookie( 'lang', $lang, time() + 60*60*24*30 );
} elseif( !isset($_COOKIE['lang']) ) {
$lang = 'en';
} else {
$lang = $_COOKIE['lang'];
}
Run Code Online (Sandbox Code Playgroud)
一旦我有了这个工作,我打算使用cookie的值来显示使用一些条件PHP的英语或俄语菜单.
谢谢.