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中使用curl_init函数的说明
Nov 02 PHP
基于python发送邮件的乱码问题的解决办法
Apr 25 PHP
Window下PHP三种运行方式图文详解
Jun 11 PHP
php中chdir()函数用法实例
Nov 13 PHP
php图片的二进制转换实现方法
Dec 15 PHP
写一段简单的PHP建立文件夹代码
Jan 06 PHP
php实现购物车功能(下)
Jan 05 PHP
高质量PHP代码的50个实用技巧必备(上)
Jan 22 PHP
PHP Laravel 上传图片、文件等类封装
Aug 16 PHP
php获取用户真实IP和防刷机制的实例代码
Nov 28 PHP
PHP _construct()函数讲解
Feb 03 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
Dec 18 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
1 Tube Radio
2021/03/02 无线电
程序员的表白神器“520”大声喊出来
2016/05/20 PHP
PHP simplexml_load_file()函数讲解
2019/02/03 PHP
聊聊 PHP 8 新特性 Attributes
2020/08/19 PHP
javascript FormatNumber函数实现方法
2008/12/30 Javascript
基于Jquery的回车成tab焦点切换效果代码(Enter To Tab )
2010/11/14 Javascript
一个可拖拽列宽表格实例演示
2012/11/26 Javascript
js判断屏幕分辨率的代码
2013/07/16 Javascript
JQuery插件fancybox无法在弹出层使用左右键的解决办法
2013/12/25 Javascript
IE与FF下javascript获取网页及窗口大小的区别详解
2014/01/14 Javascript
php+js实现倒计时功能
2014/06/02 Javascript
浅析Node.js中使用依赖注入的相关问题及解决方法
2015/06/24 Javascript
jQuery结合CSS制作动态的下拉菜单
2015/10/27 Javascript
Node.js中使用socket创建私聊和公聊聊天室
2015/11/19 Javascript
原生JS实现拖拽图片效果
2020/08/27 Javascript
在React框架中实现一些AngularJS中ng指令的例子
2016/03/06 Javascript
Angular4 中常用的指令入门总结
2017/06/12 Javascript
Vue.js做select下拉列表的实例(ul-li标签仿select标签)
2018/03/02 Javascript
react 创建单例组件的方法
2018/04/26 Javascript
Angular网络请求的封装方法
2018/05/22 Javascript
js变量声明var使用与不使用的区别详解
2019/01/21 Javascript
深入解析Vue源码实例挂载与编译流程实现思路详解
2019/05/05 Javascript
js 递归json树实现根据子id查父id的方法分析
2019/11/08 Javascript
JS实现碰撞检测效果
2020/03/12 Javascript
解决Vue router-link绑定事件不生效的问题
2020/07/22 Javascript
简单实现python聊天程序
2018/04/01 Python
python集合比较(交集,并集,差集)方法详解
2018/09/13 Python
对Python实现简单的API接口实例讲解
2018/12/10 Python
Pandas分组与排序的实现
2019/07/23 Python
python安装本地whl的实例步骤
2019/10/12 Python
CSS3中的transform属性进行2D和3D变换的基本用法
2016/05/12 HTML / CSS
HTML5新增的标签和属性归纳总结
2018/05/02 HTML / CSS
困难补助申请报告
2015/05/19 职场文书
Java spring定时任务详解
2021/10/05 Java/Android
十大经典日本动漫排行榜 海贼王第三,犬夜叉仅第八
2022/03/18 日漫
Linux下搭建SFTP服务器的命令详解
2022/06/25 Servers