PHPurl地址获取GET参数数组

4021阅读
0评论
0点赞

工作中我们可能 遇到这种情况,我们获取到一个url地址,想把它的get参数解析成GET一样的数组对象来使用。 第一步获取url中的get参数(一般第一个?问号开始),这里我们可以使用php提供的 parse_url函数来获取 $url = $_SERVER['REQUEST_URI'];//动态获取 $url = 'http://192.168.1.110/mb/demo/yc?to=1&cc=222#top=1';//固定地址 $ex = parse_url($url); var_dump($ex); 可以看到结果: array(5) { ["scheme"]=> string(4) "http" ["host"]=> string(13) "192.168.1.110" ["path"]=> string(11) "/mb/demo/yc" ["query"]=> string(11) "to=1&cc=222" ["fragment"]=> string(5) "top=1" } 那么,可以看到query参数就是我们想要的get参数了,接下来我们可以根据&与=分隔字符串得到我们的get数组对象 你也可以封装个函数,如: function convertUrlQuery($query) { $queryParts = explode('&', $query); $params = array(); foreach ($queryParts as $param) { $item = explode('=', $param); $params[$item[0]] = $item[1]; } return $params; } 最后我们来个完整的结合案例: $url = 'http://192.168.1.110/mb/demo/yc?to=1&cc=222#top=1'; $ex = parse_url($url); $_GET = convertUrlQuery($ex['query']); var_dump($_GET); 得到结果: array(2) { ["to"]=> string(1) "1" ["cc"]=> string(3) "222" } 是不是很简单,如果对你有帮助,就拿去封装使用吧,(#^.^#)  

评论(0)
暂无评论