两种情况:
用例:
- 如果场景 1 为真,我需要添加字符串
?string1=foo
- 如果场景 2 为真,我需要删除 string2=foo2 并放入 string3=foo3
我遇到问题的情况:
- 如果已经有一个字符串,我将需要添加“&”,否则它将只是“?”。
- 我不知道如何获取最后一个字符串并能够替换它。
我怎样才能解决这个问题?
两种情况:
用例:
?string1=foo
我遇到问题的情况:
我怎样才能解决这个问题?
URL 参数始终在$_GET
数组中。您可以使用它来构建您的参数列表,然后使用它http_build_query
来创建您的 URL 查询字符串。
$new_url_params = $_GET;
if ( count($new_url_params)==0 ) {
$new_url_params['string1']='foo';
} else if ( isset($new_url_params['string2']) ) {
unset($new_url_params['string2']);
$new_url_params['string3'] = 'foo3';
}
$new_url = 'http://www.example.com/index.php?'.http_build_query($new_url_params);
我想你可能想要做一些更复杂的事情。因此,您可能想要查看parse_url
获取 URL 的各个部分。
我能够at thestrpos
然后确定是否需要保留或 add后跟字符串。当我需要切换最后一个字符串时,我做了一个. 我不知道这是否是最好的解决方案,但我很高兴让它发挥作用....到目前为止。$_SERVER['REQUEST_URI']
?
?
&
str_replace