例外を簡単にラップできるように(5.3.0から)

PHPのマニュアルを見ていて気付くことって案外多い。

今日はExceptionの項を見ていて、コンストラクタの第3引数にPHP 5.3.0から別の例外を渡すことができるようになったのを知った。

<?php
try {
    $pdo = new PDO($dsn);
} catch (PDOException $e) {
    throw new AnotherException($e->getMessage(), $e->getCode(), $e);
}

つまり、こういうふうに例外のラッピングができるようになるということ。今さらな機能だけれど、実装されないよりずっといい。