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

yipeiwu_com5年前PHP代码库

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

相关文章

preg_match_all使用心得分享

preg_match_all — 进行全局正则表达式匹配 说明 复制代码 代码如下:int preg_match_all ( string pattern, string subject...

ThinkPHP写第一个模块应用

找到项目文件夹下面的Lib/Action这个目录,在下面有个创建好的例子IndexAction.class.php,加入我们创建的是admin这个项目,那么./admin/Lib/Act...

PHP SESSION机制的理解与实例

PHP SESSION的保存机制有两种方式,session.save_handler = files和session.save_handler = user,具体选用哪种方式保存,可以通...

php获取用户浏览器版本的方法

本文实例讲述了php获取用户浏览器版本的方法。分享给大家供大家参考。具体分析如下: 在php中我们有个全局变量$_SERVER['HTTP_USER_AGENT'];可以获取用户所有信息...

PHP的Yii框架的常用日志操作总结

日志 Yii提供了一个高度自定义化和高扩展性的日志框架。根据使用场景的不同,你可以很容易的对各种消息就行记录、过滤、合并,比如说文本文件,数据库文件,邮件。 使用Yii的日志框架包含如下...