简单的PHP异常处理

时间:2022-01-29 03:48:44

PHP提供了面向对象的异常处理方式。用throw抛出异常,try测试产生异常,catch捕捉异常。下面的代码演示了如何简单地抛出一个异常。

//异常处理

error_reporting(0); //让PHP不报错,方便观察异常

class MySql{

private $conn = null;

public function __construct(){
$this->conn = mysql_connect('xx','xx','xx');
if(!$this->conn){
$err = new Exception('mysql连接出错',233); //第一个参数是异常信息,第二个参数是错误代码。
throw $err; //抛出异常
}
}

}



try{ //测试异常产生
$mysql = new MySql();
}catch(Exception $err){ //捕获异常(一个try至少要有一个catch来捕捉异常,不然会产生fatal error)

$str = '错误信息:' . $err->getMessage() . '<br />';
$str .= '错误代码:' . $err->getCode() . '<br />';
$str .= '错误文件:' . $err->getFile() . '<br />';
$str .= '错误行数:' .$err->getLine() . '<br />';

echo $str;

}

更详细的异常处理,请参考大牛的博文   PHP错误异常处理详解