PHP URL参数获取方式的四种例子


Posted in PHP onFebruary 28, 2014

在已知URL参数的情况下,我们可以根据自身情况采用$_GET来获取相应的参数信息($_GET['name']);那,在未知情况下如何获取到URL上的参数信息呢?

第一种、利用$_SERVER内置数组变量

相对较为原始的$_SERVER['QUERY_STRING']来获取,URL的参数,通常使用这个变量返回的会是类似这样的数据:name=tank&sex=1
如果需要包含文件名的话可以使用$_SERVER["REQUEST_URI"](返回类似:/index.php?name=tank&sex=1)

第二种、利用pathinfo内置函数


<?php
$test = pathinfo("http://localhost/index.php");
print_r($test);
/*
结果如下
Array
(
     [dirname] => http://localhost //url的路径
     [basename] => index.php  //完整文件名
     [extension] => php  //文件名后缀
     [filename] => index //文件名
)
*/
?>

第三种、利用parse_url内置函数

<?php
$test = parse_url("http://localhost/index.php?name=tank&sex=1#top");
print_r($test);
/*
结果如下
Array
(
     [scheme] => http //使用什么协议
     [host] => localhost //主机名
     [path] => /index.php //路径
     [query] => name=tank&sex=1 // 所传的参数
     [fragment] => top //后面根的锚点
)
*/
?>

第四种、利用basename内置函数


<?php
$test = basename("http://localhost/index.php?name=tank&sex=1#top");
echo $test;
/*
结果如下
index.php?name=tank&sex=1#top
*/
?>

另外,还有就是自己通过正则匹配的处理方式来获取需要的值了。这种方式较为精确,效率暂不考虑。。。
下面拓展实践下正则处理方式:

<?php
preg_match_all("/(\w+=\w+)(#\w+)?/i","http://localhost/index.php?name=tank&sex=1#top",$match);
print_r($match);
/*
结果如下
Array
(
    [0] => Array
        (
            [0] => name=tank
            [1] => sex=1#top
        )
    [1] => Array
         (
            [0] => name=tank
             [1] => sex=1
         )
     [2] => Array
        (
             [0] =>
            [1] => #top
        )
)
*/
?>

路途漫漫...还有待继续挖掘...

PHP 相关文章推荐
用PHP实现图象锐化代码
Jun 14 PHP
如何用phpmyadmin设置mysql数据库用户的权限
Jan 09 PHP
PHP编码转换函数 自动转换字符集支持数组转换
Dec 16 PHP
解析CI即CodeIgniter框架在Nginx下的重写规则
Jun 03 PHP
PHP遍历某个目录下的所有文件和子文件夹的实现代码
Jun 28 PHP
PHP 伪静态技术原理以及突破原理实现介绍
Jul 12 PHP
php发送get、post请求的6种方法简明总结
Jul 08 PHP
PHP查找数值数组中不重复最大和最小的10个数的方法
Apr 20 PHP
谈谈 PHP7新增功能
Dec 16 PHP
PHP编程中的Session阻塞问题与解决方法分析
Aug 07 PHP
php使用curl下载指定大小的文件实例代码
Sep 30 PHP
PHP常用函数之根据生日计算年龄功能示例
Oct 21 PHP
php使用多个进程同时控制文件读写示例
Feb 28 #PHP
php使用curl抓取qq空间的访客信息示例
Feb 28 #PHP
php命名空间学习详解
Feb 27 #PHP
php读取excel文件示例分享(更新修改excel)
Feb 27 #PHP
php中的strpos使用示例
Feb 27 #PHP
php判断字符串在另一个字符串位置的方法
Feb 27 #PHP
php汉字转拼音的示例
Feb 27 #PHP
You might like
[原创]PHP中通过ADODB库实现调用Access数据库之修正版本
2006/12/31 PHP
php的curl实现get和post的代码
2008/08/23 PHP
php中防止恶意刷新页面的代码小结
2012/10/31 PHP
PHP实现动态删除XML数据的方法示例
2018/03/30 PHP
tp5实现微信小程序多图片上传到服务器功能
2018/07/16 PHP
PHP操作Redis常用命令的实例详解
2020/12/23 PHP
一个很酷的拖动层的js类,兼容IE及Firefox
2009/06/23 Javascript
用JavaScript隐藏控件的方法
2009/09/21 Javascript
JavaScript实现动态创建CSS样式规则方案
2014/09/06 Javascript
基于jQuery实现仿51job城市选择功能实例代码
2016/03/02 Javascript
JavaScript基础——使用Canvas绘图
2016/11/02 Javascript
JS实现的tab页切换效果完整示例
2018/12/18 Javascript
通过npm或yarn自动生成vue组件的方法示例
2019/02/12 Javascript
JavaScript中关于base64的一些事
2019/05/06 Javascript
react结合bootstrap实现评论功能
2020/05/30 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
python检测远程服务器tcp端口的方法
2015/03/14 Python
python skimage 连通性区域检测方法
2018/06/21 Python
Python/ArcPy遍历指定目录中的MDB文件方法
2018/10/27 Python
python pickle存储、读取大数据量列表、字典数据的方法
2019/07/07 Python
在Django下创建项目以及设置settings.py教程
2019/12/03 Python
pygame实现飞机大战
2020/03/11 Python
Python异常原理及异常捕捉实现过程解析
2020/03/25 Python
潘多拉珠宝美国官方网站:Pandora US
2020/06/18 全球购物
EJB发布WEB服务一般步骤
2012/10/31 面试题
大学生实习自我鉴定
2013/12/11 职场文书
领导调研接待方案
2014/02/27 职场文书
销售个人求职信范文
2014/04/28 职场文书
村级换届选举方案
2014/05/10 职场文书
大气污染防治方案
2014/05/19 职场文书
我的未来不是梦演讲稿
2014/09/02 职场文书
学术会议邀请函
2015/01/30 职场文书
python数据分析之用sklearn预测糖尿病
2021/04/22 Python
MySQL高速缓存启动方法及参数详解(query_cache_size)
2021/07/01 MySQL
python基础之错误和异常处理
2021/10/24 Python
JavaScript正则表达式实现注册信息校验功能
2022/05/30 Java/Android