fetch() のエラー処理に関するドキュメントが不明確なようで、何度も検索しても答えが見つかりませんでした。ドキュメントに示されているフェッチの一般的な使用モデルは次のとおりです。
while ( $row = $stmt->fetch() ) {
// do something with $row
}
http://www.php.net/manual/en/pdostatement.fetch.phpの PHP ドキュメントには次のように書かれています。
いずれの場合も、失敗すると FALSE が返されます。
「失敗」とはどういう意味ですか?エラー?さらに行をフェッチできませんでしたか? 私の質問は次のとおりです。fetch() が FALSE を返す場合、エラーを検出するためのベスト プラクティスは何ですか? ループの後、エラーの場合と「行がなくなった」場合を区別する必要があるようです。
$stmt->errorCode() を呼び出して、それが '00000' かどうかを確認する必要がありますか?