PHP中通过trigger_error触发PHP错误示例


Posted in PHP onJune 23, 2015

PHP中通过trigger_error触发PHP错误示例

【错误抑制符@】

除了 php.ini 中 error_reporting 和 display_errors 的设置、error_reporting() 函数、ini_set() 函数 外,还可以使用错误抑制符@ 屏蔽错误的输出。

@ 加在任何会产生错误的表达式之前。

【通过 trigger_error 触发 PHP 错误】

触发错误的功能不只限于 PHP 解析器,还可以通过 trigger_error() 函数触发错误,类似于异常中抛出的异常一样,抛出了一个错误,可以协助调试代码。

【例】

<?php

$num1 = 1;

$num2 = '2';

if(!(is_numeric($num1) && is_numeric($num2))){

    //手动抛出通知级别的错误

    trigger_error('num1 和 num2 必须为合法数值', E_USER_NOTICE);

}else{

    echo $num1 + $num2;

}
echo '<br />程序继续向下执行';

输出:

3

程序继续向下执行

而:
<?php

$num1 = 1;

$num2 = '2a';

if(!(is_numeric($num1) && is_numeric($num2))){

    //手动抛出通知级别的错误

    trigger_error('num1 和 num2 必须为合法数值', E_USER_NOTICE);

}else{

    echo $num1 + $num2;

}
echo '<br />程序继续向下执行';

输出:

( ! ) Notice: num1 和 num2 必须为合法数值 in D:\practise\php\Error\error1.php on line 6

程序继续向下执行

【其他】当数据库连接不上时等严重错误时,可以手动抛出错误 —— 用 E_USER_ERROR 取代 PHP 内置的E_WARNING 警告。

PHP 相关文章推荐
基于PHP+MySQL的聊天室设计
Oct 09 PHP
在线短消息收发的程序,不用数据库
Oct 09 PHP
PHP 模拟$_PUT实现代码
Mar 15 PHP
PHP数组实例总结与说明
Aug 23 PHP
选择PHP作为网站开发语言的原因分享
Jan 03 PHP
PHP计算2点经纬度之间的距离代码
Aug 12 PHP
PHP实现算式验证码和汉字验证码实例
Mar 09 PHP
PHP中实现crontab代码分享
Mar 26 PHP
54个提高PHP程序运行效率的方法
Jul 19 PHP
PHP中file_exists使用中遇到的问题小结
Apr 05 PHP
php+jQuery+Ajax简单实现页面异步刷新
Aug 08 PHP
thinkPHP实现的联动菜单功能详解
May 05 PHP
PHP实现链式操作的核心思想
Jun 23 #PHP
PHP魔术方法的使用示例
Jun 23 #PHP
8个PHP数组面试题
Jun 23 #PHP
php中 ob_start等函数截取标准输出的方法
Jun 22 #PHP
php发送邮件的问题详解
Jun 22 #PHP
PHP获取音频文件的相关信息
Jun 22 #PHP
php生成PDF格式文件并且加密
Jun 22 #PHP
You might like
PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
2012/04/09 PHP
destoon切换城市后实现logo旁边显示地区名称的方法
2014/08/21 PHP
Yii框架实现多数据库配置和操作的方法
2017/05/25 PHP
PHPStorm 2020.1 调试 Nodejs的多种方法详解
2020/09/17 NodeJs
JavaScript 设计模式学习 Singleton
2009/07/27 Javascript
网页禁用右键实现代码(JavaScript代码)
2009/10/29 Javascript
jQuery 菜单随滚条改为以定位方式(固定要浏览器顶部)
2012/05/24 Javascript
js中的eventType事件及其浏览器支持性介绍
2013/11/29 Javascript
js关于字符长度限制的问题示例探讨
2014/01/24 Javascript
javascript圆盘抽奖程序实现原理和完整代码例子
2014/06/03 Javascript
JavaScript实现定时隐藏与显示图片的方法
2015/08/06 Javascript
jQuery 1.9.1源码分析系列(十五)之动画处理
2015/12/03 Javascript
AngularJS入门教程之Select(选择框)详解
2016/07/27 Javascript
怎样判断jQuery当前元素是隐藏还是显示
2016/11/23 Javascript
jQuery实现可拖动进度条实例代码
2017/06/21 jQuery
laravel5.4+vue+element简单搭建的示例代码
2017/08/29 Javascript
vue-router实现组件间的跳转(参数传递)
2017/11/07 Javascript
PostgreSQL Node.js实现函数计算方法示例
2019/02/12 Javascript
typescript nodejs 依赖注入实现方法代码详解
2019/07/21 NodeJs
JavaScript和TypeScript中的void的具体使用
2019/09/12 Javascript
vue开发移动端底部导航条功能
2020/04/08 Javascript
JS控制下拉列表左右选择实例代码
2020/05/08 Javascript
vue实现几秒后跳转新页面代码
2020/09/09 Javascript
13个最常用的Python深度学习库介绍
2017/10/28 Python
对Django中static(静态)文件详解以及{% static %}标签的使用方法
2019/07/28 Python
Python时间序列缺失值的处理方法(日期缺失填充)
2019/08/11 Python
canvas实现扭蛋机动画效果的示例代码
2018/10/17 HTML / CSS
韩国11街:11STREET
2018/03/27 全球购物
Clearly新西兰:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
FC-Moto西班牙:摩托车手最大的购物场所之一
2019/04/11 全球购物
2014年道德讲堂实施方案
2014/03/05 职场文书
法人授权委托书
2014/04/03 职场文书
怎么写工作检讨书
2014/11/16 职场文书
爱心助学感谢信
2015/01/21 职场文书
Django集成富文本编辑器summernote的实现步骤
2021/05/31 Python
4种方法python批量修改替换列表中元素
2022/04/07 Python