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

 更新时间:2012年06月13日 14:43:43   作者:  
php对异常的处理与java一样,用到的是try{}catch(){}
定义顶级异常处理器用到的函数是
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处理postfix邮件内容的方法

    PHP处理postfix邮件内容的方法

    这篇文章主要介绍了PHP处理postfix邮件内容的方法,涉及php读取、正则匹配邮件内容的相关技巧,需要的朋友可以参考下
    2015-06-06
  • PHP类中Static方法效率测试代码

    PHP类中Static方法效率测试代码

    因为有好几个项目等着做,又不是很急,再加上目前成型的那些框架多多少少用着总是有点不太如意,所以决定先自己写一个框架,然后再做项目。既然写框架,自然要经常做一些执行效率上的测试,今天做了一个static效率的测试。
    2010-10-10
  • PHP extract 将数组拆分成多个变量的函数

    PHP extract 将数组拆分成多个变量的函数

    extract()函数提取关联数组(对数字索引数组无效)每对key和value,生成以key为变量名、value为对应值的多组新变量。
    2010-06-06
  • PHP5中使用mysqli的prepare操作数据库的介绍

    PHP5中使用mysqli的prepare操作数据库的介绍

    今天小编就为大家分享一篇关于PHP5中使用mysqli的prepare操作数据库的介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • PHP中for循环语句的几种变型

    PHP中for循环语句的几种变型

    PHP中for循环语句的几种变型...
    2006-11-11
  • php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位

    php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位

    each() 函数生成一个由数组当前内部指针所指向的元素的键名和键值组成的数组,并把内部指针向前移动。返回的数组中包括的四个元素:键名为 0,1,key 和 value。单元 0 和 key 包含有数组单元的键名,1 和 value 包含有数据
    2011-10-10
  • Windows7下的php环境配置教程

    Windows7下的php环境配置教程

    这篇文章主要介绍了Windows7下的php环境配置教程,本文讲解了Windows7下的PHP环境配置步骤,包含下载安装文件、配置PHP、添加到系统变量和检测安装是否成功等步骤,需要的朋友可以参考下
    2015-02-02
  • PHP的自定义模板引擎

    PHP的自定义模板引擎

    本文将详细介绍PHP中的模板引擎。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • php带密码功能并下载远程文件保存本地指定目录 修改加强版

    php带密码功能并下载远程文件保存本地指定目录 修改加强版

    php带密码功能并将远程文件下载到本地指定目录修改版,需要的朋友可以参考下。
    2010-05-05
  • 请php正则走开

    请php正则走开

    玩PHP玩了几年了,在刚刚接触PHP的时候感觉正则真的很洋气,我想替换啥就替换啥。然而随着工作的推移,渐渐对正则开发反感起来,正则的速度太慢了,而且特占内存。在一个群里有个网友说,正则速度快,正则简单,正则开发效率高。我并没有与他争辩,因为我刚刚做PHP的时候也是这样的想法。但是正则真的那么好吗?
    2008-03-03

最新评论