怎么在PHP 中解析url 并得到url参数(详细教程)
来源:A小公主
发布时间:2018-10-11 15:48:03
阅读量:939
本篇文章给大家带来的内容是关于怎么在PHP 中解析url 并得到url参数(详细教程),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
PHP 中解析 url 并得到 url 参数
这里介绍两种对url操作的方法:
1、拿到一个完整url后,如何解析该url得到里面的参数。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | /**
* 解析url中参数信息,返回参数数组
*/
function convertUrlQuery($query)
{
$queryParts = explode('&', $query);
$params = array();
foreach ($queryParts as $param) {
$item = explode('=', $param);
$params[$item[0]] = $item[1];
}
return $params;
}
|
2、如何把一个数组拼接成url传递。
1 2 3 4 5 6 7 8 9 10 11 12 |
function getUrlQuery( $array_query )
{
$tmp = array ();
foreach ( $array_query as $k => $param ) {
$tmp [] = $k . '=' . $param ;
}
$params = implode( '&' , $tmp );
return $params ;
}
|
测试调用:
1 2 3 4 5 6 7 | $url = 'http://www.test.com/link?param1=1¶m2=2¶m3=3' ;
$url = parse_url ( $url );
$param_arr = $this ->convertUrlQuery( $url [ 'query' ]);
$param_str = $this ->getUrlQuery( $param_arr );
|
PHP 中解析 url 并得到 url 参数
这里介绍两种对url操作的方法:
1、拿到一个完整url后,如何解析该url得到里面的参数。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
function convertUrlQuery( $query )
{
$queryParts = explode ( '&' , $query );
$params = array ();
foreach ( $queryParts as $param ) {
$item = explode ( '=' , $param );
$params [ $item [0]] = $item [1];
}
return $params ;
}
|
2、如何把一个数组拼接成url传递。
1 2 3 4 5 6 7 8 9 10 11 12 | /**
* 把数组拼接成url参数形式
*/
function getUrlQuery($array_query)
{
$tmp = array();
foreach ($array_query as $k => $param) {
$tmp[] = $k . '=' . $param;
}
$params = implode('&', $tmp);
return $params;
}
|
测试调用:
1 2 3 4 5 6 7 | $url = 'http://www.test.com/link?param1=1¶m2=2¶m3=3';
// 解析url,得到参数字符串
$url = parse_url($url);
// 字符串->数组
$param_arr = $this->convertUrlQuery($url['query']);
// 数组->字符串
$param_str = $this->getUrlQuery($param_arr);
|