程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 解決ThinkPHP關閉調試模式時報錯的問題匯總

解決ThinkPHP關閉調試模式時報錯的問題匯總

編輯:PHP綜合

案例一:

最近用ThinkPHP開發一個項目,本地開發測試完成上傳到服務器後,第一次打開正常,再刷新頁面時就出現 “頁面調試錯誤,無法找開頁面,請重試”的錯誤.

我就郁悶啦,明明本地設置define('APP_DEBUG', false) 運行沒點問題,怎麼放到服務器上就出錯了昵?

baidu,Google還是沒有找到解決方案,突然發現項目APP_Name/Runtime/Cache目錄和APP_Name/Runtime/Logs目錄沒有可寫權限,果斷更改,F5,唉好啦,媽媽再也不用擔心出現錯誤信息啦!

案例二:

ThinkPHP 將 APP_DEBUG 常量設置為 false 後出現了類似下面的問題:

復制代碼 代碼如下:
Parse error: syntax error, unexpected T_STRING in E:\PHPnow\htdocs\ojbak\Runtime\~app.php on line 1

或者直接報”服務器錯誤”, 怎麼辦?
這個和 PHP 有關系,在 php.ini 裡修改配置

復制代碼 代碼如下:
short_open_tag = On

因為 app.class.php 裡面的 build 方法:
當開啟了調試模式後,會獲取相關文件的內容 然後重新組合成文件 這個時候是會自動加上 的
也就是你看到的 ~app.php 文件了
但是當你不開啟調試模式後,會每次都會加載相關的文件,這樣子,你的錯誤就暴露出來了。

案例三:

在thinkphp中將APP_DEBUG設置為false之後,數據查詢(select, find等等)總是顯示第一條。。但是把APP_DEBUG設置為true之後,就正常了。。這是為什麼?有什麼解決方案嗎?

正常來說,APP_DEBUG是調試模式,放到線上環境,盡量要設置為false的。。

自己找一個select查詢,在關閉debug的情況下,用寫文件的方式調試下查詢後生成的sql。

以上所述就是本文的全部內容了,希望大家能夠喜歡。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved