🎃
PHP 例外処理について(基本)
はじめに
実際の開発現場でよく見る例外処理。
PHPの基本について整理するために、こちらに記載します。
try~catch~finally構文基本形
try {
// 例外が発生する可能性のあるコード
}
catch(Exception $e) {
// 例外発生時の処理
}
finally {
// 例外の有無に関わらず実行されるコード
}
基本例文
try {
Test::create([
name => "tanaka",
favorite => "sports"
]);
}
catch(Exception $e) {
echo '捕捉した例外: ', $e->getMessage(), "\n";
}
finally {
echo "最後まで処理を実行しました";
}
例外クラスで呼び出せるメソッド例
getMessage()・・・例外メッセージ(よく使う)
getCode()・・・例外コード
getFile()・・・例外が発生したファイル名
getLine()・・・例外が発生した行数
getPrevious()・・・前の例外
例外クラスについて
Exceptionクラスが全ての例外の基底クラス。
例外をキャッチするために、できるだけ下位のクラスを使用するべきであるため、Exceptionクラスをそのまま使うことは避けたほうが良いかもしれません。
※vendor/guzzlehttp/guzzle/src/Exceptionディレクトリ内にその他のクラスが入ってます。
使用用途
このような例外処置の使い道として、様々ありますが、
よく見る例ですと、DBへの保存処理で使われています。
DBへの保存に失敗したら、エラーを吐き出し、原因を特定し、改善する流れです。
Discussion