对多个参数使用(未设置)


using (unset) for multiple parameters

我在这里使用答案 https://stackoverflow.com/a/27689796/3842368 从 url 中删除几个参数。我认为它正在工作,直到今天我发现如果我定义多个参数,unset() 不起作用。

我的PHP代码是:

$url = $_SERVER["REQUEST_URI"];
$x = $url;
$parsed = parse_url($x);
$query = $parsed['query'];
parse_str($query, $params);
unset($params['qdef, qval1']);
$string = http_build_query($params);

$params 正在使用print_r生成以下数组:

数组 ( [use_url] => 在 [邮政编码] => 阿克明斯特, 德文郡 EX13 5RZ [类别] => 数组 ( [0] => 2 ) [半径] => 0 [复选框国家] => 1 [提交] => 加载结果...[是q

] => y [qdef] => 2 [qval1] => 100.00 [qval2] => 525.00 [调味料] => 1 [滑块值1] => 0 [滑块值2] => 70 [结果栏] => 25 [排序栏] =>距离 [纬度] => 50.50.77643440000001 [LNG] => -2.9810417 [SWLAT] => 50.7773526197085 [swlng] => -2.9814507999999478 [nelat] => 50.7800505802915 [nelng] => -2.9749947000000247 [输出代码] => EX13 ) 1

所以我遇到的问题是,如果我写unset($params['qdef']);那么 qdef 就会从 url 中剥离,但如果我写unset($params['qdef, qval1']);那么什么都不会被剥离。我尝试用逗号分隔它们,将每个参数括在"[]"中,没有任何效果。我已经尝试了很多在unset()命令中定义参数的方法,但没有任何效果。

有什么想法吗?

$params['qdef']$params['qval1']是数组中的单独元素

unset($params['qdef'], $params['qval1']);

以单独取消设置

unset($params['qdef, qval1']); 

正在尝试从$params中取消设置单个元素,键为 'qdef, qval1'