我得到了这个网址: http ://example.com/cat/subcat?var1=value1&var2=value2
我需要将查询部分的键和值抓取到单独的数组中。所以 $query_string 数组应该包含这些值:
var1=值1&var2=值2
然后,我希望 $keys 数组具有以下值: var1,var2,
然后,我希望 $values 数组具有以下值: value1,value2
最后,我需要回显 $keys 数组和 $values 数组的每个值。
这是我失败的尝试:
<?php
$url = 'http://example.com/cat/subcat?var1=value1&var2=value2';
var_dump(parse_url($url));
$scheme = parse_url($url, PHP_URL_SCHEME);
$user = parse_url($url, PHP_URL_USER);
$pass = parse_url($url, PHP_URL_PASS);
$host = parse_url($url, PHP_URL_HOST);
$port = parse_url($url, PHP_URL_PORT);
$path = parse_url($url, PHP_URL_PATH);
$query_strings = parse_url($url, PHP_URL_QUERY);
$fragment = parse_url($url, PHP_URL_FRAGMENT);
echo $parsed_url = $scheme .'://' .$user .$pass .$host .$port .$path .'?' .$query_strings .$fragment;
echo '<br>';
//var1=value1&var2=value2
$query_strings_array = array();
$query_strings_array[] = implode("&", $query_strings);//Warning: implode(): Invalid arguments passed in C:\xampp\htdocs\Templates\Pagination_Template.php on line 311
foreach ($query_strings_array as $key)
{
$query_strings_keys_array[] = implode("=", $query_strings);//Warning: implode(): Invalid arguments passed in C:\xampp\htdocs\Templates\Pagination_Template.php on line 315
$query_strings_keys[] = $key;
$query_strings_values[] = $value; //Notice: Undefined variable: value in C:\xampp\htdocs\Templates\Pagination_Template.php on line 317
echo $query_strings_keys[-1];
echo $query_strings_values[-1];
}
?>
错误: 警告:implode():在第 311 行的 C:\xampp\htdocs\Templates\Pagination_Template.php 中传递的参数无效警告:implode():在 C:\xampp\htdocs\Templates\Pagination_Template.php 中传递的参数无效第 315 行注意:未定义变量:第 317 行 C:\xampp\htdocs\Templates\Pagination_Template.php 中的值
我还提到了我在上述代码注释中遇到的错误,以指示我的代码中的错误行。