<?php
//定义一个顶级异常处理器 要定义在最上面
function my_exception($e)
{
echo "我是顶级异常处理:".$e->getMessage();
}
//修改默认顶级异常处理函数
set_exception_handler("my_exception");
function a1($val)
{
if($val>100)
{
throw new Exception("val>100");
}
}
function a2($val)
{
if($val=="hello")
{
throw new Exception("不要输入Hello");
}
}
try
{
a2("hello");
}catch(Exception $ex)
{
throw $ex;
}
//-------------------------
class MyException1 extends Exception{
}
class MyException2 extends Exception{
}
function A()
{
throw new MyException1("a");
}
function B()
{
throw new MyException2("b");
}
function C()
{
try{
A();
B();
}catch(MyException1 $e1)
{
echo "第一种异常".$e1->getMessage();
}catch(MyException2 $e2)
{
echo "第二种异常:". $e2->getMessage();
}
}
C();
?>