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