PHP解析url并得到url参数方法总结


Posted in PHP onOctober 11, 2018

PHP 中解析 url 并得到 url 参数

这里介绍两种对url操作的方法:

1、拿到一个完整url后,如何解析该url得到里面的参数。

/**
 * 解析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传递。

/**
 * 把数组拼接成url参数形式
 */
function getUrlQuery($array_query)
{
  $tmp = array();
  foreach ($array_query as $k => $param) {
   $tmp[] = $k . '=' . $param;
  }
  $params = implode('&', $tmp);
  return $params;
}

测试调用:

$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);

PHP 中解析 url 并得到 url 参数

这里介绍两种对url操作的方法:

1、拿到一个完整url后,如何解析该url得到里面的参数。

/**
 * 解析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传递。

/**
 * 把数组拼接成url参数形式
 */
function getUrlQuery($array_query)
{
  $tmp = array();
  foreach ($array_query as $k => $param) {
   $tmp[] = $k . '=' . $param;
  }
  $params = implode('&', $tmp);
  return $params;
}

测试调用:

$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);
PHP 相关文章推荐
php的ajax框架xajax入门与试用介绍
Dec 19 PHP
php中is_null,empty,isset,unset 的区别详细介绍
Apr 28 PHP
PHP数据库链接类(PDO+Access)实例分享
Dec 05 PHP
浅谈PHP解析URL函数parse_url和parse_str
Nov 11 PHP
php截取中文字符串函数实例
Feb 23 PHP
php实现概率性随机抽奖代码
Jan 02 PHP
php技巧小结【推荐】
Jan 19 PHP
PHP实现的折半查找算法示例
Dec 19 PHP
YII分模块加载路由的实现方法
Oct 01 PHP
Smarty缓存机制实例详解【三种缓存方式】
Jul 20 PHP
laravel利用中间件做防非法登录和权限控制示例
Oct 21 PHP
ThinkPHP5.1+Ajax实现的无刷新分页功能示例
Feb 10 PHP
详细对比php中类继承和接口继承
Oct 11 #PHP
PHP JWT初识及其简单示例
Oct 10 #PHP
php-fpm.conf配置文件中文说明详解及重要参数说明
Oct 10 #PHP
php实现单笔转账到支付宝功能
Oct 09 #PHP
php实现小程序支付完整版
Oct 09 #PHP
php实现微信企业付款到个人零钱功能
Oct 09 #PHP
php实现构建排除当前元素的乘积数组方法
Oct 06 #PHP
You might like
强烈推荐:php.ini中文版(2)
2006/10/09 PHP
从MySQL数据库表中取出随机数据的代码
2007/09/05 PHP
php中smarty区域循环的方法
2015/06/11 PHP
PHP预定义变量9大超全局数组用法详解
2016/04/23 PHP
PHP MYSQL简易交互式站点开发
2016/12/27 PHP
php传值和传引用的区别点总结
2019/11/19 PHP
js Date自定义函数 延迟脚本执行
2010/03/10 Javascript
nodejs实用示例 缩址还原
2010/12/28 NodeJs
JavaScript NodeTree导航栏(菜单项JSON类型/自制)
2013/02/01 Javascript
小米公司JavaScript面试题
2014/12/29 Javascript
RequireJS入门一之实现第一个例子
2015/09/30 Javascript
JS中如何实现Laravel的route函数详解
2017/02/12 Javascript
Vue.js实现移动端短信验证码功能
2017/03/29 Javascript
node文件上传功能简易实现代码
2017/06/16 Javascript
js动态引入的四种方法
2018/05/05 Javascript
angularjs结合html5实现拖拽功能
2018/06/25 Javascript
JS原生瀑布流效果实现
2019/04/26 Javascript
13 个npm 快速开发技巧(推荐)
2019/07/04 Javascript
小程序中英文混合排序问题解决
2019/08/02 Javascript
用Python制作简单的钢琴程序的教程
2015/04/01 Python
Django开发中的日志输出的方法
2018/07/02 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
2019/12/10 Python
pytorch之添加BN的实现
2020/01/06 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
日本7net购物网:书籍、漫画、杂志、DVD、游戏邮购
2017/02/17 全球购物
英国最大的割草机购买网站:Just Lawnmowers
2019/11/02 全球购物
Linux中如何设置Java环境变量(Ubuntu)
2016/07/24 面试题
接口可以包含哪些成员
2012/09/30 面试题
个人简历自我评价范文
2014/02/04 职场文书
《满井游记》教学反思
2014/02/26 职场文书
2014年端午节活动方案
2014/03/11 职场文书
高中运动会广播稿
2014/09/16 职场文书
导游词之无锡古运河
2019/11/14 职场文书
.Net Core导入千万级数据至Mysql的步骤
2021/05/24 MySQL
在Java中Collection的一些常用方法总结
2021/06/13 Java/Android
MySQL七种JOIN类型小结
2021/10/24 MySQL