惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
量子位
博客园 - 司徒正美
IT之家
IT之家
V
Visual Studio Blog
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
Google DeepMind News
Google DeepMind News
Last Week in AI
Last Week in AI
Microsoft Security Blog
Microsoft Security Blog
T
Tailwind CSS Blog
aimingoo的专栏
aimingoo的专栏
GbyAI
GbyAI
Vercel News
Vercel News
B
Blog
大猫的无限游戏
大猫的无限游戏
D
DataBreaches.Net
小众软件
小众软件
罗磊的独立博客
博客园 - 叶小钗
雷峰网
雷峰网
Martin Fowler
Martin Fowler
Hugging Face - Blog
Hugging Face - Blog
WordPress大学
WordPress大学

博客园 - 小小飞鹰

MMM互助金融/理财源码 js 弹出窗口 防止拦截,突破阻止,保存后打开 .NET开发者必备的工具箱 NBIbatis web/winform框架 NBIbatis 微信框架 NBIbatis 框架体系说明 NBIbatis 基础框架 开源中国上一些有用的开源系统 TfS+强制删除签出锁定项 sqlserver 链接 ODBC 访问 MySql ibatis + log4net 配置注意事项 Devexpress GridView内嵌dx:ASPxGridLookup取得控件值乱跳解决方案 【转】Asp.Net MVC及Web API框架配置会碰到的几个问题及解决方案 将关系数据库映射到业务实体 百度贴吧10亿量级LAMP架构分享 [转]ASP.NET中 WebSite 跟 WebProject 的异同 dynamics ax 2009 distinct实现及数组集合 dynamics ax 2009 字段类似的表绑定界面注意 dynamics Ax 2009 实现 union 效果
thinkphp支持大小写url地址访问,不产生下划线
小小飞鹰 · 2014-10-28 · via 博客园 - 小小飞鹰

from:http://www.111cn.net/phper/thinkPhp/57748.htm

一、在配置文件中开启了thinkphp的大小写识别功能,使链接大小写都可以正常访问:

‘URL_CASE_INSENSITIVE’ =>true

文件命名都是规范的,但是在模板中使用__URL__获取当前url路径时,却没有正确得到url。

手册中这样写:

这里需要注意一个地方,如果我们定义了一个UserTypeAction的模块类,那么URL的访问应该是:

http://serverName/index.php/user_type/list

而不是

http://serverName/index.php/usertype/list

在模板中使用__URL__得到的链接还是下面那个,并没有加上下划线。

二、解决办法是修改tp的源代码:

在tp的Lib文件夹的Core文件夹下的Dispatcher.class.php文件,找到181行,这里定义了__URL__的地址获取方式:

 代码如下 复制代码
$moduleName    =   defined('MODULE_ALIAS')?MODULE_ALIAS:MODULE_NAME;
        if(define(www.111cn.net)d('GROUP_NAME')) {
            define('__URL__',!empty($domainModule)?__GROUP__.$depr : __GROUP__.$depr.( C('URL_CASE_INSENSITIVE') ? strtolower($moduleName) : $moduleName ) );
        }else{
            define('__URL__',!empty($domainModule)?__APP__.'/' : __APP__.'/'.( C('URL_CASE_INSENSITIVE') ? strtolower($moduleName) : $moduleName) );
        }
 

把其中的C(‘URL_CASE_INSENSITIVE’) ? strtolower($moduleName) : $moduleName )改成:

 代码如下 复制代码
C('URL_CASE_INSENSITIVE') ? parse_name($moduleName,0) : $moduleName
 

这样就OK了!