讓ThinkPHP支持大小寫url地址訪問的方法
本文實(shí)例講述了讓thinkphp支持大小寫url地址訪問的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
通常ThinkPHP默認(rèn)是區(qū)別大小寫url的,這種也是與linux系統(tǒng)一樣在小寫url是兩個(gè)不同的名字,但我們使用windows習(xí)慣了對(duì)于大小寫都認(rèn)為一樣的,所以還是要根據(jù)用戶習(xí)慣來處理問題,下面我們一起來看問題解決方法。
在配置文件中開啟了thinkphp的大小寫識(shí)別功能,使鏈接大小寫都可以正常訪問:
'URL_CASE_INSENSITIVE' =>true
文件命名都是規(guī)范的,但是在模板中使用__URL__獲取當(dāng)前url路徑時(shí),卻沒有正確得到url。
手冊(cè)中這樣寫:
這里需要注意一個(gè)地方,如果我們定義了一個(gè)UserTypeAction的模塊類,那么URL的訪問應(yīng)該是:
http://serverName/index.php/user_type/list
而不是
http://serverName/index.php/usertype/list
在模板中使用__URL__得到的鏈接還是下面那個(gè),并沒有加上下劃線。
這個(gè)問題在網(wǎng)上也有很多人反饋,有個(gè)解決辦法是修改tp的源代碼:
在tp的Lib文件夾的Core文件夾下的Dispatcher.class.php文件,找到181行,這里定義了__URL__的地址獲取方式:
if(defined('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) );
}
把其中的
這樣問題就搞定了!
希望本文所述對(duì)大家的ThinkPHP框架程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP模板引擎Smarty內(nèi)置變量調(diào)解器用法詳解
這篇文章主要介紹了PHP模板引擎Smarty內(nèi)置變量調(diào)解器用法,結(jié)合實(shí)例形式詳細(xì)分析了Smarty中的常用內(nèi)置變量調(diào)節(jié)器定義與使用技巧,需要的朋友可以參考下2016-04-04
PHP配置把錯(cuò)誤日志以郵件方式發(fā)送方法(Windows系統(tǒng))
這篇文章主要介紹了PHP配置把錯(cuò)誤日志以郵件方式發(fā)送方法(Windows系統(tǒng)),本文給出了配置示例和使用例子,需要的朋友可以參考下2015-06-06
PHP實(shí)現(xiàn)Javascript中的escape及unescape函數(shù)代碼分享
這篇文章主要介紹了PHP實(shí)現(xiàn)Javascript中的escape及unescape函數(shù)代碼分享,本文給出兩個(gè)實(shí)現(xiàn)版本,需要的朋友可以參考下2015-02-02
Yii+MYSQL鎖表防止并發(fā)情況下重復(fù)數(shù)據(jù)的方法
這篇文章主要介紹了Yii+MYSQL鎖表防止并發(fā)情況下重復(fù)數(shù)據(jù)的方法,分析了MySQL讀鎖定、寫鎖定及Yii實(shí)現(xiàn)MySQL讀寫鎖定的相關(guān)技巧,需要的朋友可以參考下2016-07-07

