初级PHP--错误处理

1.错误处理级别:

① 语法错误:error 会给一个致命错误,终止程序继续执行

② 运行时错误:notice warning 运行代码的时候错误,有错误提示,但不会影响程序运行,但结果不是预期的

③ 逻辑错误:逻辑出现错误(不报错,不易排错)

④ notice:本身不是一个错误,只是一个提示,该错误可忽略

⑤ warning:警告,只要产生warning错误,程序执行结果就不是预期的,并不会终止代码执行,这个错误必须排除

⑥ error:致命错误,必须排除

2.调整错误报错级别:

① E_ERROR  (1):致命的运行时错误,会阻止程序继续执行

② E_WARNING  (2):运行时警告

③ E_NOTICE (8):运行时注意

④ E_ALL (81、91):所有错误和警告的注意信息

3.自定义错误处理:

(1)屏蔽错误

① 系统函数屏蔽错误

ini_set()  设置php.ini中的配置文件配置项

              参数:a.要设置的php.ini的配置项

                          b.要设置的php.ini的配置项的值

ini_get()  获取php.ini中的配置项

             参数:要获取的php.ini的配置项(获取display_errors配置项的值:0屏蔽错误、1不屏蔽错误)

error_reporting()  设置报错错误级别

             参数:E_ALL^E_NOTICE^E_WARNING

② 手动屏蔽错误

修改php.ini中display_errors=on为off,error_reporting=E_ALL&~E_NOTICE&~E_WARNING

重启服务器才能生效

(2)修改错误位置

error_log()   发送错误信息到某个地方

            参数:① 应该被记录的错误信息

                        ② 设置发送到何处

                             0--发送到系统错误日志

                             1--发送到管理员邮箱中

                             2--发送到某个对应服务器上

                             3--发送到目标文件,以字符串形式存储

                       ③ 目标文件

            返回值:true/false

(3)自定义错误日志

error_log()写入下面的内容到php错误日志中

;error_log="C:/wamp/logs/php_error.log"      

;Log errors to syslog(Event log on windows)     //php日志中

;error_log=syslog                                                  //系统日志中

trigger_error()   产生一个用户级别的error、warning、notice信息

           参数:①  错误信息(1024字节内)

                       ②  该Error所特定的错误类型,默认E_USER_NOTICE

           返回值:true/false

Q: 什么时候可以考虑自定义错误处理?

A:    ① 可以记下错误信息及时发现一些生产环境出现的问题

        ② 可以屏蔽错误

        ③ 可以控制输入报错

        ④ 可以作为调试工具

猜你喜欢

转载自blog.csdn.net/LISsAa/article/details/82389386