欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 PHP解析URL并得到URL中的参数 ?php//例举一个URL格式的字符串: $str //1 用parse_url解析URL,此处是$str $arr = parse_url($str); var_dump($arr); //2 将URL中的参数取出来放到数组里 $arr_欢迎进入linux社区论坛,与200万技术人员互动交流 >>进入PHP解析URL并得到URL中的参数php
var_dump($arr);
//2 将URL中的参数取出来放到数组里$arr_query = convertUrlQuery($arr['query']);
var_dump($arr_query);
//3 将 参数数组 再变回 字符串形式的参数格式var_dump(getUrlQuery($arr_query));
/*** Returns the url query as associative array* @param string query* @return array params*/ function convertUrlQuery($query)
{$queryParts = explode('&', $query);
$params = array();
foreach ($queryParts as $param)
{$item = explode('=', $param);
$params[$item[0]] = $item[1];}return $params;PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。
下载}function getUrlQuery($array_query)
{$tmp = array();
foreach($array_query as $k=>$param)
{$tmp[] = $k.'='.$param;}$params = implode('&',$tmp);
return $params;}?>
输出结果:
array (size=4)
'scheme' => string 'http' (length=4)
'host' => string 'test.com' (length=8)
'path' => string '/testdir/index.php' (length=18)
'query' => string 'param1=10¶m2=20¶m3=30¶m4=40¶m5=50¶m6=60' (length=59)
array (size=6)
'param1' => string '10' (length=2)
'param2' => string '20' (length=2)
'param3' => string '30' (length=2)
'param4' => string '40' (length=2)
'param5' => string '50' (length=2)
'param6' => string '60' (length=2)
string 'param1=10¶m2=20¶m3=30¶m4=40¶m5=50¶m6=60' (length=59)
