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 相关文章推荐
Classes and Objects in PHP5-面向对象编程 [1]
Oct 09 PHP
用php写的serv-u的web申请账号的程序
Oct 09 PHP
部署PHP项目应该注意的几点事项分享
Dec 20 PHP
php5.2以下版本无json_decode函数的解决方法
May 25 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
Jul 04 PHP
php ci框架中加载css和js文件失败的原因及解决方法
Jul 29 PHP
Codeigniter实现发送带附件的邮件
Mar 19 PHP
PHP多文件上传实例
Jul 09 PHP
ThinkPHP发送邮件示例代码
Oct 08 PHP
PHP 与 UTF-8 的最佳实践详细介绍
Jan 04 PHP
PHP调用API接口实现天气查询功能的示例
Sep 21 PHP
goto语法在PHP中的使用教程
Sep 17 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生成二维码的几种方式整理及使用实例
2013/06/03 PHP
laravel框架中控制器的创建和使用方法分析
2019/11/23 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
2020/02/23 PHP
Laravel如何实现适合Api的异常处理响应格式
2020/06/14 PHP
jQuery之end()和pushStack()使用介绍
2012/02/07 Javascript
js 获取计算后的样式写法及注意事项
2013/02/25 Javascript
原生JS可拖动弹窗效果实例代码
2013/11/09 Javascript
js的隐含参数(arguments,callee,caller)使用方法
2014/01/28 Javascript
一张表格告诉你windows.onload()与$(document).ready()的区别
2014/05/16 Javascript
JavaScript中的变量定义与储存介绍
2014/12/31 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
2015/10/08 Javascript
原生js实现百叶窗效果及原理介绍
2016/04/12 Javascript
plupload+artdialog实现多平台上传文件
2016/07/19 Javascript
深入理解JavaScript函数参数(推荐)
2016/07/26 Javascript
Angularjs自定义指令实现分页插件(DEMO)
2017/09/16 Javascript
JavaScript 隐性类型转换步骤浅析
2018/03/15 Javascript
js中Object.defineProperty()方法的不详解
2018/07/09 Javascript
使用layui实现树形结构的方法
2019/09/20 Javascript
vue使用showdown并实现代码区域高亮的示例代码
2019/10/17 Javascript
vue实现给div绑定keyup的enter事件
2020/07/31 Javascript
Vue实现穿梭框效果
2020/09/30 Javascript
微信小程序实现页面监听自定义组件的触发事件
2020/11/01 Javascript
ReactRouter的实现方法
2021/01/25 Javascript
[01:45]DOTA2众星出演!DSPL刀塔次级职业联赛宣传片
2014/11/21 DOTA
Python备份目录及目录下的全部内容的实现方法
2016/06/12 Python
Python字符串处理实现单词反转
2017/06/14 Python
python按比例随机切分数据的实现
2019/07/11 Python
python实现将文件夹内的每张图片批量分割成多张
2019/07/22 Python
pytorch绘制并显示loss曲线和acc曲线,LeNet5识别图像准确率
2020/01/02 Python
jupyter notebook 增加kernel教程
2020/04/10 Python
HTML5实现表单自动验证功能实例代码
2017/01/11 HTML / CSS
英国殿堂级有机护肤品牌:Rodial
2017/04/17 全球购物
天巡全球:Skyscanner Global
2017/06/20 全球购物
Volcom英国官方商店:美国殿堂级滑板、冲浪、滑雪服装品牌
2019/03/13 全球购物
法学毕业生自荐信
2013/11/13 职场文书
车队安全员岗位职责
2015/02/15 职场文书