·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> php网站开发 >> thinkphp3.2.3如何只改变地址url中的某一个分隔符,其它保持不变

thinkphp3.2.3如何只改变地址url中的某一个分隔符,其它保持不变

作者:佚名      php网站开发编辑:admin      更新时间:2022-07-23

 今天教大家一个关于使用thinkphp3.2.3改变只改变地址url中的某一个分隔符的方法,首先大家来看看这个地址!

    

thinkphp3.2.3如何只改变地址url中的某一个分隔符,其它分隔符保持不变

 

    它的原始地址应该是/Home/Index/index/page/2.html,那我们怎样将改变page后面 / 符号改成 _ 符号呢?

 

    一、精简地址url

    其实thinkphp最初用U()函数打印出来地址应该是这样的/index.php/Home/Index/index.html,那么我们应该讲其中的index.php去除,这样不仅地址美观而且有利于SEO!我们找到localhost/application/Common/Conf/config.php文件并且打开,在里面的数组中添加下面代码

'URL_MODEL' => 2

thinkphp3.2.3如何只改变地址url中的某一个分隔符,其它分隔符保持不变

看搞定了吧!

 

    二、使用正则路由修改分隔符

    1、还是在config.php文件中,将路由功能打开,添加下面代码

'URL_ROUTER_ON' => true

  2、使用正则路由修改url最后一个分隔符

'URL_ROUTE_RULES' => array(
    '/([w/]+)/page_(d+)$/' => ':1?page=:2'
)

注意,这里的正则和PHP中的正则是一样的,后面的 :1 就是PHP正则中的 1或者$1 代表第一个括号里面的内容

 

thinkphp3.2.3如何只改变地址url中的某一个分隔符,其它分隔符保持不变

 

    这样就配置好了,现在我们可以测试一下是否成功!首先我们打印出$_GET['page'],然后在地址栏输入localhost/Home/Index/index/page_2.html,如果输出的是2那么恭喜你成功啦!

 

    所以你的localhost/Application/Common/Conf/config.php文件需要输入有下面代码才能只改变地址url的某一个分隔符,我这里改变的是最后一个分隔符!

return array(
     
    //设置URL模式
    'URL_MODEL' => 2,
     
    //启动路由功能
    'URL_ROUTER_ON' => true,
     
    //正则路由
    'URL_ROUTE_RULES' => array(
        //修改分页地址
        '/([w/]+)/page_(d+)$/' => ':1?page=:2'
    )
     
     
);

本文来源于王业楼的个人博客 本文地址:http://www.ly89.cn/detailB/50.html

欢迎分享本文,转载请注明本文出处和地址