Home > Article > Backend Development > Summary of solving the problem of error when turning off debugging mode in ThinkPHP_PHP Tutorial
A summary of solving the problem of thinking when ThinkPHP turns off the debugging mode This article summarizes several situations where I encountered errors when turning off the debugging mode of ThinkPHP in the project and the final solutions. It is very simple and practical. I will share it with you here for those who need it. Partners can refer to it.
Case 1:
I recently developed a project using ThinkPHP. After the local development and testing was completed and uploaded to the server, it opened normally for the first time. However, when I refreshed the page, the error "Page debugging error, cannot find the page, please try again" appeared.
I am depressed. It is clear that the local setting define('APP_DEBUG', false) runs without any problems, but why does it go wrong when I put it on the server?
Baidu, Google still hasn’t found a solution, and suddenly found that the project APP_Name/Runtime/Cache directory and APP_Name/Runtime/Logs directory did not have writable permissions, so I changed it decisively, F5, oh well, mom no longer has to worry about error messages. La!
Case 2:
A problem similar to the following occurred after ThinkPHP set the APP_DEBUG constant to false:
The code is as follows:
Parse error: syntax error, unexpected T_STRING in E:PHPnowhtdocsojbakRuntime~app.php on line 1
Or directly report "server error", what should I do?
This is related to PHP, modify the configuration in php.ini
The code is as follows:
short_open_tag = On
Because of the build method in app.class.php:
When the debugging mode is turned on, the contents of the relevant files will be obtained and then reassembled into files. At this time,
will be added automatically.That is the ~app.php file you see
But when you do not enable debugging mode, the relevant files will be loaded every time, so your errors will be exposed.
Case 3:
After setting APP_DEBUG to false in thinkphp, data queries (select, find, etc.) always display the first item. . But after setting APP_DEBUG to true, it becomes normal. . Why is this? Is there any solution?
Normally speaking, APP_DEBUG is debugging mode. When placed in an online environment, try to set it to false. .
Find a select query yourself, and with debug turned off, use writing files to debug the SQL generated after the query.
The above is the entire content of this article, I hope you all like it.
http://www.bkjia.com/PHPjc/988365.html