我的网站中有一个语言系统。当人们点击切换到另一种语言时,会在 url 中添加以下内容:?lang=
. ?p=
问题是,我的网站也被添加到 url的页面划分。所以基本上,如果他们在其中一个页面上更改语言,它将覆盖?p=
并返回主页。所以会的index.php?lang=
。
代码是什么,或者我应该如何对其进行编码,以便 php 验证?
url 中是否已经有一个字符串并切换?lang=
到&lang=
?
您可以使用http_build_query
来避免此问题:
$params = array(
'p' => 'foo',
'lang' => 'bar'
);
echo http_build_query($params); // p=foo&lang=bar
echo '?' . http_build_query($params); // ?p=foo&lang=bar
检查是否$_SERVER['QUERY_STRING']
为空。
如果是,则添加,?lang=
否则添加&lang=