您当前的位置:首页 > 分类 > 技术资讯 > PHP > 正文

php获取url参数方法总结

发布时间:2016-04-15 15:04:15      来源:51推一把
【摘要】这篇文章主要介绍了php获取url参数方法,实例总结了利用parse_url()函数解析URL的方法,适用于从url字符串中分离各个参数及参数值
这篇文章主要介绍了php获取url参数方法,实例总结了利用parse_url()函数解析URL的方法,适用于从url字符串中分离各个参数及参数值

在php中获取url中参数的方法有很多种,其中最简单的就直接使用parse_url函数了,他可以很方便快速的自动解析url参数与值并保存期到对应的数组中,其它的一种方法基本都是正则表达式来操作了。

parse_url函数
我们先来了解一下parse_url函数,官方解决
说明:
mixed parse_url ( string $url [, int $component = -1 ] )
本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分。
本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分。不完整的 URL 也被接受, parse_url() 会尝试尽量正确地将其解析。
要解析的 URL。无效字符将使用 _ 来替换。

实例如下:

$url = "http://www.jb51.net/welcome/";
$parts = parse_url($url);
print_r($parts);
array
(
    [scheme] => http
    [host] => www.jb51.net
    [path] => /welcome/
)

也可以自己去写一个算法!如下

function getParams($url)
{
   $refer_url = parse_url($url);
   
   $params = $refer_url[query];
   
   $arr = array();
   if(!empty($params))
   {
       $paramsArr = explode(&,$params);
   
       foreach($paramsArr as $k=>$v)
       {
          $a = explode(=,$v);
          $arr[$a[0]] = $a[1];
       }
   }
   return $arr;
}


$url = /index.php?_p=index&_a=show&x=12&y=23;
$arr = getParams($url);
print_r($arr);

运行结果如下:
Array ( [_p] => index [_a] => show [x] => 12 [y] => 23 )