强制php运行时显示错误信息

说明:
有时候调试php的时候,部份文件不能提示详细错误信息,直接就是500错误,或者什么也没显示,给开发带来很多麻烦。网上大部份方法都是改php.ini,但对于线上环境这个方法不可行,另外有些主机用户也是没有权限修改的。通过直接在运行的php文件头部加下面这段代码是最方便的。

具体:
直接在运行的php文件头部加入以下这段代码

<?php
ini_set('display_errors','1');
error_reporting(E_ALL);
?>

附录:
附录1:php error错误代码

Errors and Logging
Value Constant Description Note
1 E_ERROR (integer) Fatal run-time errors. These indicate errors that can not be recovered from, such as a memory allocation problem. Execution of the script is halted.  
2 E_WARNING (integer) Run-time warnings (non-fatal errors). Execution of the script is not halted.  
4 E_PARSE (integer) Compile-time parse errors. Parse errors should only be generated by the parser.  
8 E_NOTICE (integer) Run-time notices. Indicate that the script encountered something that could indicate an error, but could also happen in the normal course of running a script.  
16 E_CORE_ERROR(integer) Fatal errors that occur during PHP’s initial startup. This is like an E_ERROR, except it is generated by the core of PHP.  
32 E_CORE_WARNING(integer) Warnings (non-fatal errors) that occur during PHP’s initial startup. This is like an E_WARNING, except it is generated by the core of PHP.  
64 E_COMPILE_ERROR(integer) Fatal compile-time errors. This is like an E_ERROR, except it is generated by the Zend Scripting Engine.  
128 E_COMPILE_WARNING(integer) Compile-time warnings (non-fatal errors). This is like anE_WARNING, except it is generated by the Zend Scripting Engine.  
256 E_USER_ERROR(integer) User-generated error message. This is like an E_ERROR, except it is generated in PHP code by using the PHP functiontrigger_error().  
512 E_USER_WARNING(integer) User-generated warning message. This is like an E_WARNING, except it is generated in PHP code by using the PHP functiontrigger_error().  
1024 E_USER_NOTICE(integer) User-generated notice message. This is like an E_NOTICE, except it is generated in PHP code by using the PHP functiontrigger_error().  
2048 E_STRICT (integer) Enable to have PHP suggest changes to your code which will ensure the best interoperability and forward compatibility of your code. Since PHP 5 but not included inE_ALL until PHP 5.4.0
4096 E_RECOVERABLE_ERROR(integer) Catchable fatal error. It indicates that a probably dangerous error occurred, but did not leave the Engine in an unstable state. If the error is not caught by a user defined handle (see also set_error_handler()), the application aborts as it was anE_ERROR. Since PHP 5.2.0
8192 E_DEPRECATED(integer) Run-time notices. Enable this to receive warnings about code that will not work in future versions. Since PHP 5.3.0
16384 E_USER_DEPRECATED(integer) User-generated warning message. This is like anE_DEPRECATED, except it is generated in PHP code by using the PHP function trigger_error(). Since PHP 5.3.0
32767 E_ALL (integer) All errors and warnings, as supported, except of levelE_STRICT prior to PHP 5.4.0. 32767 in PHP 5.4.x, 30719 in PHP 5.3.x, 6143 in PHP 5.2.x, 2047 previously

The above values (either numerical or symbolic) are used to build up a bitmask that specifies which errors to report. You can use the bitwise operators to combine these values or mask out certain types of errors. Note that only ‘|’, ‘~’, ‘!’, ‘^’ and ‘&’ will be understood within php.ini.

发表评论

邮箱地址不会被公开。 必填项已用*标注