php获取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 无效字符将使用 _ 来替换。

实例代码如下:

  1. $url = "http://www.phpfensi.com/welcome/";
  2. $parts = parse_url($url);
  3. print_r($parts);
  4. array
  5. (
  6. [scheme] => http
  7. [host] => www.phpfensi.com
  8. [path] => /welcome/
  9. )

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

  1. function getParams()
  2. {
  3. $url = '/index.php?_p=index&_a=show&x=12&y=23';
  4. $refer_url = parse_url($url);
  5. $params = $refer_url['query'];
  6. $arr = array();
  7. if(!emptyempty($params))
  8. {
  9. $paramsArr = explode('&',$params);
  10. foreach($paramsArr as $k=>$v)
  11. {
  12. $a = explode('=',$v);
  13. $arr[$a[0]] = $a[1];
  14. }
  15. }
  16. return $arr;
  17. }

调用方法,代码如下:

$arr = getParams(); print_r($arr);

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