PHP从入门到精通(六)

网友投稿 495 2022-11-02

PHP从入门到精通(六)

PHP从入门到精通(六)

PHP中的错误处理

1、PHP的错误级别:见表格。2、调整PHP错误报告级别:PHP中,调整错误报告级别的方式有两种: ①修改PHP.ini文件的配置项。a、会导致在当前服务器环境下所有PHP文件都受其影响。b、如果代码更换服务器,会导致配置文件全部失效,需要重新配置。所以实际开发过程中,并不推荐使用此方式!!②在代码中使用ini_set()函数,动态的修改php.ini文件的配置项;(get为获取配置项)>>>php.ini中的两个重要配置项:①display_errors:开启或关闭所有错误级别报告;可选值:1/On表示开启所有错误报告功能; 0/Off表示关闭所有报告;默认开启,而且强烈建议开启!!

代码实例:

ini_set("display_errors","0");---->关闭错误报告功能;

②error_reporting:设置那些错误可以进行报告;有两个函数可以设置:ini_set()和error_reporting;

代码示例:

ini_set("error_reporting",E_ALL);报告所有级别;error_reporting("E_ALL & ~E_NOTICE");不报告notice级别,其他均正常报告;

3、使用错误日志,记录出现的错误;①使用日志文件记录:使用error_log()函数将错误信息输出到日志文件中。默认的日志文件在wamp中的log文件夹下,php_error.log文件;>>>自定义日志文件打印错误:

代码示例:

ini_set("error_log","E:/text.txt");//设置日志文件地址;error_log("出错了!!!");//打印一句错误信息;error_log("这是一个PHP错误",3,"E:/textLog.text");//直接将错误信息打印到指定文件中;

②写进Windows系统日志中:

代码示例:

ini_set("error_log", "syslog");//设置日志记录到系统日志;error_log("系统日志出错");//使用日志报错时,将自动进入系统日志;

实例展示:

ini_set("display_errors", 1); $errMessage=""; function errorHandler($type,$message,$file,$line){ global $errMessage; switch ($type) { case E_NOTICE: $errMessage .= "发生了没有什么卵用的小bug,就不用处理了

"; break; case E_WARNING: $errMessage .= "出错啦!!!"; $errMessage .= "错误类型是:{$type}"; $errMessage .= "错误信息是:{$message}"; $errMessage .= "错误发生的文件是:{$file}"; $errMessage .= "错误发生的行号是:{$line}"; $errMessage .= "

"; break; case E_ERROR: echo ""; break; default: echo ""; break; } } set_error_handler("errorHandler"); //ini_set("error_reporting",E_ALL); //error_reporting(E_ALL & ~E_NOTICE); ini_set("error_log", "syslog"); error_log("这是一个PHP错误",3,"E:/textLog.text");echo $num;//trigger_error("22222222",E_USER_NOTICE);//自定义一个错误,上述函数未接受,因此会进入default;echo "11111";echo "
-------------------------------------------------
";echo $errMessage;

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:展示 Android 程序方法调用链的 gralde 插件,支持输出html文件和方法折叠
下一篇:SpringBoot中到底该如何解决跨域问题
相关文章

 发表评论

暂时没有评论,来抢沙发吧~