PDOを利用したエラー発生時の例外処理
PHPプログラム実行中にエラーが発生した際に行う処理として、PDOを利用し発生したエラーを全て例外として処理する記述例を示します。
try~catch構文で、エラー処理を一括で行います。
setAttribute()でエラーを全て例外に設定し、fatalエラーでプログラムの実行が止まらないようにハンドリングします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
try { //データベースへの接続(PDOインスタンス作成) $pdo =new PDO("mysql:host=ホスト名;dbname=データベース名", "ユーザー名", "パスワード"); //発生するエラーを全て例外に設定 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //文字コードの設定 $pdo->exec("SET NAMES utf8"); /* 例外が発生する可能性のある処理をここに記述 */ } catch (PDOException $e){ //例外発生時の処理⇒エラーページへリダイレクト header("Location: error.php"); exit; } |