平成30/ 2018-10-20 06:03
PHP/try catch

try{
    echo "a\n";
    throw new Exception("hoge");
    echo "b\n";

}catch(Exception $e){
    var_dump( $e->getMessage());
    //$opt["log"]  = DB::$err;
    $opt["line"] = $e->getLine(); // 行数とれるよ
    $opt["file"] = $e->getFile(); // ファイル名とれるよ
    Mail::sendErr($opt);
}
    echo $e->getLine(). "\n";
}
>>
a
string(4) "hoge"
4
>>
b の処理までは実行されないということが分かる。
また、
Exception()の引数に配列は使えない




>>
例外処理をする( try-catch )
http://www.php-ref.com/basic/06_try_catch.html
例1) 例外「Exception」を発生させてcatchしたら、例外エラーメッセージを表示する。
<?php
try {
 echo "先行処理\n";

 $error = '例外メッセージ!!';
 throw new Exception($error);

 // 例外に続く処理は実行されない
 echo "後続処理";

} catch (Exception $e) {
 echo "例外キャッチ:", $e->getMessage(), "\n";
}
?>

●実行結果
先行処理
例外キャッチ:例外メッセージ!!