[b]Try...Catch[/b]
[b]Exception类[/b]
PHP为异常处理提供了内之类——Exception。
除了构造函数外,该类还提供了如下所示的内置方法:
[list]
[*]getCode() 返回传递给构造函数的代码。
[*]getMessage() 返回传递给构造函数的消息
[*]getFile() 返回产生异常的代码文件的完整路径
[*]getLine() 返回代码文件中产生异常的代码行号
[*]getTrace() 返回一个包含了产生异常的代码回退路径的数组
[*]getTraceAsString() 返回与getTrace()方向相同的信息,该信息将被格式化成一个字符串。
[*]_ToString() 允许简单地显示一个Exception对象,并且给出以上所有方法可以提供的信息。
[/list]
[b]用户自定义异常[/b]
参考资料:
PHP&MySQL.Web
<?php
try{
}
catch(Exception $e){
}
?>
[b]Exception类[/b]
PHP为异常处理提供了内之类——Exception。
除了构造函数外,该类还提供了如下所示的内置方法:
[list]
[*]getCode() 返回传递给构造函数的代码。
[*]getMessage() 返回传递给构造函数的消息
[*]getFile() 返回产生异常的代码文件的完整路径
[*]getLine() 返回代码文件中产生异常的代码行号
[*]getTrace() 返回一个包含了产生异常的代码回退路径的数组
[*]getTraceAsString() 返回与getTrace()方向相同的信息,该信息将被格式化成一个字符串。
[*]_ToString() 允许简单地显示一个Exception对象,并且给出以上所有方法可以提供的信息。
[/list]
[b]用户自定义异常[/b]
<?php
class Exception{
function __construct(string $message = null, int $code = 0){
if(func_num_args()){
$this->message = $message;
}
$this->code = $code;
$this->file = __FILE__;
$this->line = __LINE__;
$this->trace = debug_backtrace();
$this->string = StringFormat($this);
}
protected $message;
protected $code = 0;
protected $file;
protected $line;
private $trace;
private $string;
final function getMessage(){
return $this->message;
}
final function getCode(){
return $this->code;
}
final function getTrace(){
return $this->trace;
}
final function getTraceAsString(){
return self::TraceFormat($this);
}
function _toString(){
return $this->string;
}
static private function StringFormat(Exception $exception){
}
static private function TraceFormat(Exception $exception){
}
}
?>
参考资料:
PHP&MySQL.Web