php异常处理技术,顶级异常处理器


Posted in PHP onJune 13, 2012

定义顶级异常处理器用到的函数是
set_exception_handler("My_exception");
这里的My_expection是开发者自定义的异常处理函数,既顶级异常处理器,只有当程序中没有函数来处理异常才有顶级异常处理器来处理异常,如果没有定义顶级异常处理器,则由系统默认的异常处理器来处理异常

举例说明:

<meta http-equiv="content-type" content="text/html;charset=utf-8" /><?php 
set_exception_handler("My_expection"); 
function My_expection(){ 
echo "这里是顶级异常处理器"; 
} 
try{ 
nohello("hello"); 
}catch(Exception $e){ 
throw $e; 
} 
function nohello($nohello){ 

 if($nohello == "hello"){ 

 throw new Exception("不能输入hello"); 

 }else{ 
echo "输入成功"; 
} 
} 
?>

关于PHP异常处理 的一个问题
<?php 
try { 
$a=10/0; 
}catch (Exception $e){ 
echo "抛出异常"; 
} 
?>

以上代码,并不会输出“抛出异常”,而是输出了错误信息:Warning: Division by zero in......

说明:try块中并没有抛出异常,而是按照系统默认的错误处理机制进行处理

所以能不能捕获到异常,取决于有没有真正的抛出异常

PHP 相关文章推荐
用在PHP里的JS打印函数
Oct 09 PHP
PHP4之COOKIE支持详解
Oct 09 PHP
php的header和asp中的redirect比较
Oct 09 PHP
怎样才能成为PHP高手?学会“懒惰”的编程
Dec 05 PHP
MySQL修改密码方法总结
Mar 25 PHP
美图秀秀web开放平台--PHP流式上传和表单上传示例分享
Jun 22 PHP
php+MySQL判断update语句是否执行成功的方法
Aug 28 PHP
深入浅出php socket编程
May 13 PHP
图文介绍PHP添加Redis模块及连接
Jul 28 PHP
Yii2 rbac权限控制操作步骤实例教程
Apr 29 PHP
基于PHP实现栈数据结构和括号匹配算法示例
Aug 10 PHP
Laravel使用原生sql语句并调用的方法
Oct 09 PHP
PHP的异常处理类Exception的使用及说明
Jun 13 #PHP
PHP抽象类 介绍
Jun 13 #PHP
MySQL 日期时间函数常用总结
Jun 12 #PHP
PHP简洁函数(PHP简单明了函数语法)
Jun 10 #PHP
php数字游戏 计算24算法
Jun 10 #PHP
细谈php中SQL注入攻击与XSS攻击
Jun 10 #PHP
逆序二维数组插入一元素的php代码
Jun 08 #PHP
You might like
完美解决thinkphp验证码出错无法显示的方法
2014/12/09 PHP
CI映射(加载)数据到view层的方法
2016/03/28 PHP
微信JSSDK分享功能图文实例详解
2019/04/08 PHP
laravel 解决crontab不执行的问题
2019/10/22 PHP
关于PHP中interface的用处详解
2020/07/26 PHP
在IE,Firefox,Safari,Chrome,Opera浏览器上调试javascript
2008/12/02 Javascript
JS 学习笔记 防止发生命名冲突
2009/07/30 Javascript
ECMAScript6中Map/WeakMap详解
2015/06/12 Javascript
MVVM模式中ViewModel和View、Model有什么区别?
2015/06/19 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
2015/09/23 Javascript
Jquery组件easyUi实现表单验证示例
2016/08/23 Javascript
BootStrap组件之进度条的基本用法
2017/01/19 Javascript
浅析javaScript中的浅拷贝和深拷贝
2017/02/15 Javascript
prototype.js简单实现ajax功能示例
2017/10/18 Javascript
vue input输入框关键字筛选检索列表数据展示
2020/10/26 Javascript
微信小程序实现时间进度条功能
2020/11/17 Javascript
JavaScript中this函数使用实例解析
2020/02/21 Javascript
jQuery实现的分页插件完整示例
2020/05/26 jQuery
微信小程序清空输入框信息与实现屏幕往上滚动的示例代码
2020/06/23 Javascript
解决vue一个页面中复用同一个echarts组件的问题
2020/07/19 Javascript
Django 添加静态文件的两种实现方法(必看篇)
2017/07/14 Python
python抖音表白程序源代码
2019/04/07 Python
浅谈Django中view对数据库的调用方法
2019/07/18 Python
浅谈Keras的Sequential与PyTorch的Sequential的区别
2020/06/17 Python
python对输出的奇数偶数排序实例代码
2020/12/04 Python
通过一张图教会你CSS3倒影的实现
2017/09/26 HTML / CSS
HTML5 图片悬停放大的实现代码示例
2019/12/04 HTML / CSS
德国大型和小型家用电器网上商店:Energeto
2019/05/15 全球购物
美丽家庭事迹材料
2014/05/03 职场文书
村班子对照检查材料
2014/08/18 职场文书
县政府领导班子“四风”方面突出问题整改措施
2014/09/23 职场文书
个人股份合作协议书
2014/10/24 职场文书
天鹅湖观后感
2015/06/09 职场文书
导游词之神仙居景区
2019/11/15 职场文书
pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作
2021/05/22 Python
配置Kubernetes外网访问集群
2022/03/31 Servers