php解析url并得到url中的参数及获取url参数的四种方式

[复制链接]
haoyangtian实名认证 手机认证 视频认证 发表于 2018-8-2 09:25:40 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
  1. <?php
  2. $url = 'http://www.baidu.com/index.php?m=content&c=index&a=lists&catid=6&area=0&author=0&h=0®ion=0&s=1&page=1';
  3. $arr = parse_url($url);
  4. var_dump($arr);
  5. $arr_query = convertUrlQuery($arr['query']);
  6. var_dump($arr_query);
  7. var_dump(getUrlQuery($arr_query));
  8. /**
  9. * 将字符串参数变为数组
  10. * @param $query
  11. * @return array array (size=10)
  12.           'm' => string 'content' (length=7)
  13.           'c' => string 'index' (length=5)
  14.           'a' => string 'lists' (length=5)
  15.           'catid' => string '6' (length=1)
  16.           'area' => string '0' (length=1)
  17.           'author' => string '0' (length=1)
  18.           'h' => string '0' (length=1)
  19.           'region' => string '0' (length=1)
  20.           's' => string '1' (length=1)
  21.           'page' => string '1' (length=1)
  22. */
  23. function convertUrlQuery($query)
  24. {
  25.   $queryParts = explode('&', $query);
  26.   $params = array();
  27.   foreach ($queryParts as $param) {
  28.     $item = explode('=', $param);
  29.     $params[$item[0]] = $item[1];
  30.   }
  31.   return $params;
  32. }
  33. /**
  34. * 将参数变为字符串
  35. * @param $array_query
  36. * @return string string 'm=content&c=index&a=lists&catid=6&area=0&author=0&h=0®ion=0&s=1&page=1' (length=73)
  37. */
  38. function getUrlQuery($array_query)
  39. {
  40.   $tmp = array();
  41.   foreach($array_query as $k=>$param)
  42.   {
  43.     $tmp[] = $k.'='.$param;
  44.   }
  45.   $params = implode('&',$tmp);
  46.   return $params;
  47. }
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

专注源码分享,教程分享
全国服务电话

187-8198-7163

周一至周8:00-22:00

反馈建议

cdhaoyt@163.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.2© 2001-2013 Comsenz Inc.( 蜀ICP备16032957号-1