天天看點

PHP 中解析 url 并得到 url 參數

PHP 中解析 url 并得到 url 參數

這裡介紹兩種對url操作的方法:

1、拿到一個完整url後,如何解析該url得到裡面的參數。

1 /**
 2  * 解析url中參數資訊,傳回參數數組
 3  */
 4 function convertUrlQuery($query)
 5 {
 6    $queryParts = explode('&', $query);
 7 
 8    $params = array();
 9    foreach ($queryParts as $param) {
10       $item = explode('=', $param);
11       $params[$item[0]] = $item[1];
12    }
13 
14    return $params;
15 }      

2、如何把一個數組拼接成url傳遞。

1 /**
 2  * 把數組拼接成url參數形式
 3  */
 4 function getUrlQuery($array_query)
 5 {
 6    $tmp = array();
 7    foreach ($array_query as $k => $param) {
 8       $tmp[] = $k . '=' . $param;
 9    }
10    $params = implode('&', $tmp);
11    return $params;
12 }      

測試調用:

1 $url = 'http://www.test.com/link?param1=1&param2=2&param3=3';
2 // 解析url,得到參數字元串
3 $url = parse_url($url);
4 // 字元串->數組
5 $param_arr = $this->convertUrlQuery($url['query']);
6 // 數組->字元串
7 $param_str = $this->getUrlQuery($param_arr);      
php