Java とは異なり、php では例外を手動でスローしてキャッチする必要があります。例:
<?php try{ throw new <strong>Exception</strong>("A terrible error has occurred",42); }catch (<strong>Exception</strong> $e){ echo "<strong>Exception</strong> ".$e->getCode().":".$e->getMessage()."<br/>"."in".$e->getFile()." on line".$e->getLine()."<br/>"; }
例外処理
"><?php
//自定义异常
class my<strong>Exception</strong> extends <strong>Exception</strong>{
function __toString(){
return "<strong>Exception</strong> ".$this->getCode().":".$this->getMessage()."<br/>"."in".$this->getFile()." on line".$this->getLine()."<br/>";
}
}
try{
throw new my<strong>Exception</strong>("A terrible error has occurred",42);
}catch (my<strong>Exception</strong> $m){
echo $m;
}</span></p>例外処理<p>の適用例: ファイルI/O処理
<span></span>まず、例外クラス ファイル file_</p>Exception<p>.php<span></span></p>
<br><strong></strong><div class="code" style="position:relative; padding:0px; margin:0px;"><pre name="code"><?php
//自定义文件打开异常
class fileOpen<strong>Exception</strong> extends <strong>Exception</strong>{
function __toString(){
return "fileOpen<strong>Exception</strong> ".$this->getCode().":".$this->getMessage()."<br/>"."in".$this->getFile()." on line".$this->getLine()."<br/>";
}
}
//自定义无法写入异常
class fileWrite<strong>Exception</strong> extends <strong>Exception</strong>{
function __toString(){
return "fileWrite<strong>Exception</strong> ".$this->getCode().":".$this->getMessage()."<br/>"."in".$this->getFile()." on line".$this->getLine()."<br/>";
}
}
//自定义无法获得写锁异常
class fileLock<strong>Exception</strong> extends <strong>Exception</strong>{
function __toString(){
return "fileLock<strong>Exception</strong> ".$this->getCode().":".$this->getMessage()."<br/>"."in".$this->getFile()." on line".$this->getLine()."<br/>";
}
}
Exception.php ファイルをメイン ファイル processorder.php ファイルに導入します。
<strong>require</strong>_once ("file_<strong>Exception</strong>.php");
例外処理キーコード:
りー上記は、PHP のエラーと例外処理を、関連する内容も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。