php方法中有<br>报错,PHP中的错误有哪些?又该如何处理?

一、错误的级别

1.notice 提示

2.warning警告

3.error致命错误

notice和warning报错后继续执行,

error报错后停止执行

二、错误的提示方法

方法一:显示在浏览器上

方法二:记录在日志中

三、与错误有关的配置

在php.ini中

1. error_reporting = E_ALL:报告所有的错误

2. display_errors= On:将错误显示在浏览器上

3. log_errors = On:将错误记录在日志中

4. error_log=’地址’:错误日志保存的地址

在项目开发过程中有两个模式,开发模式,运行模式

开发模式:错误显示在浏览器上,不要记录在日志中

运行模式:错误不显示在浏览器上,记录是日志中<?php

$debug=false; //true:开发模式 false:运行模式

ini_set('error_reporting',E_ALL); //所有的错误有报告

if($debug){

ini_set('display_errors','on'); //错误显示是浏览器上

ini_set('log_errors','off'); //错误不显示在日志中

}else{

ini_set('display_errors','off');

ini_set('log_errors','on');

ini_set('error_log','./err.log'); //错误日志保存的地址

}

//测试

echo $num;

四、自定义错误

通过trigger_error产生一个用户级别的 error/warning/notice 信息/**

*自定义错误处理函数

*@param $errno int 错误类别

*@param $errstr string 错误信息

*@param $errfile string 文件地址

*@param $errline int 错误行号

*/

function error($errno,$errstr,$errfile,$errline) {

switch($errno){

case E_NOTICE:

case E_USER_NOTICE:

echo '记录在日志中,上班后在处理
';

break;

case E_WARNING:

case E_USER_WARNING:

echo '给管理员发邮件
';

break;

case E_ERROR:

case E_USER_ERROR:

echo '给管理员打电话
';

break;

}

echo "错误信息:{$errstr}
";

echo "错误文件:{$errfile}
";

echo "错误行号:{$errline}
";

}

set_error_handler('error');

echo $num;

//运行结果

记录在日志中,上班后在处理

错误信息:Undefined variable: num

错误文件:F:\wamp\www\4-demo.php

错误行号:50

想了解更多PHP相关内容,请访问PHP中文网:PHP视频教程

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值