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 相关文章推荐
E路文章系统PHP
Dec 11 PHP
PHP中return 和 exit 、break和contiue 区别与用法
Apr 09 PHP
深入PHP nl2br()格式化输出的详解
Jun 05 PHP
ThinkPHP中的关联模型注意点
Jun 16 PHP
Drupal简体中文语言包安装教程
Sep 27 PHP
thinkphp视图模型查询提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解决方法
Oct 30 PHP
封装ThinkPHP的一个文件上传方法实例
Oct 31 PHP
PHP函数实现从一个文本字符串中提取关键字的方法
Jul 01 PHP
PHP编写登录验证码功能 附调用方法
May 19 PHP
PHP合并数组函数array_merge用法分析
Feb 17 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
Nov 12 PHP
laravel 使用事件系统统计浏览量的实现
Oct 16 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(2)
2006/10/09 PHP
$_GET['goods_id']+0 的使用详解
2013/06/06 PHP
php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法
2015/11/30 PHP
一个XML格式数据转换为图表的例子
2010/02/09 Javascript
Javascript学习笔记二 之 变量
2010/12/15 Javascript
JavaScript字符串对象的concat方法实例(用于连接两个或多个字符串)
2014/10/16 Javascript
Angular.js 实现数字转换汉字实例代码
2016/07/14 Javascript
angularJS Provider、factory、service详解及实例代码
2016/09/21 Javascript
微信小程序 swiper组件详解及实例代码
2016/10/25 Javascript
Vue.js实现移动端短信验证码功能
2017/03/29 Javascript
JS运动特效之完美运动框架实例分析
2018/01/24 Javascript
详解javascript replace高级用法
2019/02/17 Javascript
vue 地区选择器v-distpicker的常用功能
2019/07/23 Javascript
JS实现提示效果弹出及延迟隐藏的功能
2019/08/26 Javascript
Vue.js计算机属性computed和methods方法详解
2019/10/12 Javascript
[55:03]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第二场 11.20
2020/11/20 DOTA
Django1.7+python 2.78+pycharm配置mysql数据库教程
2014/11/18 Python
用python做一个搜索引擎(Pylucene)的实例代码
2017/07/05 Python
详解python基础之while循环及if判断
2017/08/24 Python
详解Django之admin组件的使用和源码剖析
2018/05/04 Python
Python面向对象之反射/自省机制实例分析
2018/08/24 Python
基于Python2、Python3中reload()的不同用法介绍
2019/08/12 Python
python定间隔取点(np.linspace)的实现
2019/11/27 Python
Python中三维坐标空间绘制的实现
2020/09/22 Python
HTML5 device access 设备访问详解
2018/05/24 HTML / CSS
HTML5中使用json对象的实例代码
2018/09/10 HTML / CSS
联想墨西哥官方网站:Lenovo墨西哥
2016/08/17 全球购物
经理秘书找工作求职信
2013/12/19 职场文书
捐款倡议书
2014/04/14 职场文书
《社戏》教学反思
2014/04/15 职场文书
幼儿教师师德承诺书
2014/05/23 职场文书
2014年入党积极分子党校培训心得体会
2014/07/08 职场文书
新农村建设汇报材料
2014/08/15 职场文书
安全施工责任书
2014/08/25 职场文书
中学教师教学工作总结
2015/08/13 职场文书
解决hive中导入text文件遇到的坑
2021/04/07 Python