LoginSignup
1
0

More than 3 years have passed since last update.

【PHP】PDOクラスインスタンス時の例外処理

Last updated at Posted at 2019-10-24

PDOとは?

PHP Data Objectsの略称で、PHP標準(5.1.0以降)のデータベース接続クラスのことです。

例外処理とは

予め例外が発生しそうな処理を予期し、発生したらスローという形で送られるのでキャッチで処理を行う。

try-catch

例外が発生するかもしれない処理をtryに記述する
例外が発生した場合の処理をcatchに記述する

if文との違い

if文 は条件分岐で、 try は例外時のアクションの規定です。
if でその時点での条件を調べて処理を分岐させます。
trueかfalseどちらに進んでも逐次的な動作(上から順に動く)です。
try-catchは後続の処理が継続不可となる事態が発生した場合は処理を中断させる。

コード例

function hogePDO()
{
    try {
        // PDOクラスのインスタンス化を実行しているがエラーが発生するかもしれない
       return new PDO(DSN, DB_USER, DB_PASSWORD);
    } catch (PDOException $e) {
        // 指定されたデータベースへの接続に失敗した場合の処理
        // PDOExceptionクラスがスローされる、それをキャッチする処理
        // $eはPDOExceptionクラスをインスタンスした物
        // $eからgetMessageメソッドを実行している
        echo $e->getMessage();
        exit();
    }
}

備考

  • Exception頭文字をとって「$e」とするのが慣習となっている

公式

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0