解決ThinkPHP關(guān)閉調(diào)試模式時報錯的問題匯總

字號:


    解決ThinkPHP關(guān)閉調(diào)試模式時報錯的問題匯總
    本文給大家匯總了一下個人在項目中所遇到的關(guān)閉ThinkPHP的調(diào)試模式時遇到報錯的幾種情況以及最終的處理辦法,非常的簡單實用,這里分享給大家,有需要的小伙伴可以參考下。
    案例一:
    最近用ThinkPHP開發(fā)一個項目,本地開發(fā)測試完成上傳到服務(wù)器后,第一次打開正常,再刷新頁面時就出現(xiàn) “頁面調(diào)試錯誤,無法找開頁面,請重試”的錯誤.
    我就郁悶啦,明明本地設(shè)置define('APP_DEBUG', false) 運行沒點問題,怎么放到服務(wù)器上就出錯了昵?
    baidu,Google還是沒有找到解決方案,突然發(fā)現(xiàn)項目APP_Name/Runtime/Cache目錄和APP_Name/Runtime/Logs目錄沒有可寫權(quán)限,果斷更改,F(xiàn)5,唉好啦,媽媽再也不用擔(dān)心出現(xiàn)錯誤信息啦!
    案例二:
    ThinkPHP 將 APP_DEBUG 常量設(shè)置為 false 后出現(xiàn)了類似下面的問題:
    代碼如下:
    Parse error: syntax error, unexpected T_STRING in E:\PHPnow\htdocs\ojbak\Runtime\~app.php on line 1
    或者直接報”服務(wù)器錯誤”, 怎么辦?
    這個和 PHP 有關(guān)系,在 php.ini 里修改配置
    代碼如下:
    short_open_tag = On
    因為 app.class.php 里面的 build 方法:
    當(dāng)開啟了調(diào)試模式后,會獲取相關(guān)文件的內(nèi)容 然后重新組合成文件 這個時候是會自動加上 的
    也就是你看到的 ~app.php 文件了
    但是當(dāng)你不開啟調(diào)試模式后,會每次都會加載相關(guān)的文件,這樣子,你的錯誤就暴露出來了。
    案例三:
    在thinkphp中將APP_DEBUG設(shè)置為false之后,數(shù)據(jù)查詢(select, find等等)總是顯示第一條。。但是把APP_DEBUG設(shè)置為true之后,就正常了。。這是為什么?有什么解決方案嗎?
    正常來說,APP_DEBUG是調(diào)試模式,放到線上環(huán)境,盡量要設(shè)置為false的。。
    自己找一個select查詢,在關(guān)閉debug的情況下,用寫文件的方式調(diào)試下查詢后生成的sql。
    以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。