北京尚网汇智科技有限公司
您当前所在的位置:尚网汇智网站建设 > PHP技术 > 文章详细
网站建设知识
NEWS
联系我们
  • 网站建设服务电话
  • 400-883-2887
  • 公司地址:北京市昌平科技园区创意大厦2-806
  • 服务项目
    高端网站建设
    移动/微信网站建设
    手机APP开发
    OA/ERP业务系统开发
    网站维护托管
    CMS模板制作

    【PHP经验】PHP 四种URL解析处理方式

    发布时间:2014-07-18 00:23:01

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

    那,在未知情况下如何获取到URL上的参数信息呢?

    今天查了下资料,自己也留个笔记,以后也好找...

    好,废话不多说,下面给大家列举四个利用PHP自有函数来实现未知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*/?>


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

    下面拓展实践下正则处理方式:

    <?phppreg_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        ))*/?>

    文章出自:北京网站建设公司-尚网汇智 https://www.net2006.com 如转载请注明出处!
    咨询服务热线
    400-883-2887
    客服电话:400-883-2887  传真:010-51654992  E-mail:support@net2006.com
    本站设计已受版权保护,任何公司及个人不得复制,违者将依法追究责任,特此声明。

    Copyright © 2005-2018 北京尚网汇智科技有限公司 版权所有 京ICP备13031271号
    查找内容: