スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[PHP] PDOでエラーが発生した時のエラー原因を分りやすく表示する方法

PDOを使っていると、エラーが発生した時のメッセージが実に不親切極まりない、と腹立たしく思う。
例えば以下のようなコードで、"hoge_id"というカラムをタイプミスしていた場合。

$pdo = new PDO("mysql:host=localhost; dbname=hoge", "root", "fuga");
$query = $pdo->query("SELECT hoge_id FROM hoge_table");
$row = $query->fetch(PDO::FETCH_ASSOC);

この場合、
Fatal error: Call to a member function fetch() on a non-object in /var/www/html/hoge.php on line xx
といったメッセージが出るのみだ。

new PDO した後で、
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
としてやると、まともなメッセージが出るようになる。
スポンサーサイト
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。