【发布时间】:2011-04-22 23:24:04
【问题描述】:
如何从 url 中删除查询字符串?
示例:我有一个如下网址:
http://example.com?q1=v1&q2=v2&q3=v3
我想删除q1 和q3,留下q2,并添加q4 及其值v4
我该怎么做?
【问题讨论】:
标签: php url query-string
如何从 url 中删除查询字符串?
示例:我有一个如下网址:
http://example.com?q1=v1&q2=v2&q3=v3
我想删除q1 和q3,留下q2,并添加q4 及其值v4
我该怎么做?
【问题讨论】:
标签: php url query-string
有点取决于您是否知道键是什么。如果你这样做,它会是这样的:
$params = $_GET;
unset($params['q1']);
unset($params['q3']);
$params['q4'] = 'v4';
$my_new_param_string = http_build_query($params);
$new_url = 'http://example.com?' . $my_new_param_string;
您可以直接操作 $_GET,但我个人不喜欢这样做。 有关 http_build_query 的更多信息: http://php.net/manual/en/function.http-build-query.php
如果您只是将该网址作为字符串,您可以这样做:
$url_bits = parse_url('http://example.com/?q1=v1&q2=v2&q3=v3');
$params = parse_str($url_bits['query']);
其余部分与上面 $params = $_GET 之后的位相同。
如果需要,您也可以稍后使用 $url_bits 将其转回字符串。
【讨论】: