skillup

技術ブログ

プログラミング全般

PHPの例外クラスについて

投稿日:

PHPの例外クラスについて今まで一方的にExceptionで受けており、それ自体は問題なさそうですが、

一応再度確認。

エラークラスの分類

例外処理について その2

Throwableに関して

上にあるように、Throwableが全ての上位クラスで、その下にErrorとExceptionがあり、try{}catch(Throwable )・・・のようなコードを書くとErrorクラスをキャッチしてしまうが、Errorクラスに関しては

  • エラーの範囲が広く、抽象的になる
  • 開発時点で潰しているべきエラー

といった意見もあり、try〜catchに関してはExceptionを使うことが一般的。

ただ、あえてそういったエラーも拾うのが意図ならcatchするのもありかも・・・・

Exceptionsに関して

できればこれを継承して独自の例外クラスを作り、throwした方がベター。

Exceptionsクラスをより具体化し、原因の判別をより迅速に行うため。

参考リンク

\Throwableをcatchしないで」と伝えていく

お前は PHP 7 における Fatal Error / Catchable Fatal Error / Error / ErrorException / Exception の違いを言えるか?

PHP) Exceptionエラー設計原則とアプリケーションへの導入

-プログラミング全般
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

ユーザーに見せるエラーメッセージに関する考察

プログラムで難しいことの3つは テスト ログ エラーハンドリング とかいてきましたが、ユーザー側に見せるエラーメッセージについて考察して見ました。 Contents1 ログとエラーメッセージの違い2 …

no image

浮動小数点に関して

金額計算なんかでfloatを使うと誤差が出るっていうのは基礎的な話ではありますが、背景知識を含めて理解しておこうと思ったのでメモります。 Contents1 float,doubleでの誤差2 金額の …

no image

ログインしたままにするの挙動に関して(ステートフル認証の基本的な仕組みの復習もかねて)

基礎の基礎ですが、ログイン処理に関しての動きに関して。 Contents1 通常のログイン処理に関して2 ログインしたままにする 通常のログイン処理に関して 通常のログイン処理では、まず以下のような手 …

no image

コードレビュー時のポイント

コードレビュー(仕様的な点ではなくて規約的なところのチェック)などで気をつけることなど。 ポイントとしては検知ツールで確認するコストを減らすことが一番大事(カスタマイズの方法について調べておく)、ある …

no image

データ構造の基礎知識 前編 メモリとポインタ、配列と連結リスト

WEB+DB(vol91)で使えそうな連載記事がありますのでブログにメモリます。 テーマはデータ構造です。 Contents1 データ構造とは?2 計算量3 プログラムとメモリ4 配列について4.1 …

アーカイブ