Help us understand the problem. What is going on with this article?

try {} catch {}

More than 3 years have passed since last update.

「例外処理」という予期しない処理(エラー)が発生した時に、実行する処理のこと。

たとえば、
・データベースにアクセスできない
・数値計算でゼロ除算
・ユーザーの入力値が不正
など。

通常、エラーが発生すると、
- PHPのエラーが表示され処理中断
- Warningだけ表示して処理続行
のような処理が行われるが、「例外処理」を設定すると、上記のようなエラー発生時にも処理を中断せず、エラーが発生した場合に実行する処理として指定しておいた例外処理を実行させることができる。

基本的に、
「tryブロック、throw文、catchブロック」という構成を取る。

トライで処理を実行して、エラーが発生したら例外をスロウ(投げる)して、投げられた例外をキャッチして例外時の処理を実行する。

具体的な処理方法は、以下のページに分かりやすい解説が掲載されている。

http://www.phppro.jp/phptips/archives/vol45/2

http://www.shigeweb.jp/php/project_p/?page=exception&section=php5oop

* スローされるオブジェクトは、Exception クラスあるいは Exception のサブクラスのインスタンスでなければなりません。 それ以外のオブジェクトをスローしようとすると PHP の Fatal Error が発生します。

tuckQ
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away