ホームページ > バックエンド開発 > PHPチュートリアル > phpのPDO例外処理方法の詳細説明

phpのPDO例外処理方法の詳細説明

墨辰丷
リリース: 2023-03-28 14:14:01
オリジナル
1672 人が閲覧しました

この記事では、主に php での PDO 例外処理の関連内容を紹介します。最初に簡単に説明し、次にサンプル コードを通じてその使用方法を紹介します。参考にしてください。興味のある友達が来て一緒に学ぶことができます。

例外処理:

PHP: デフォルトはエラーを直接報告します

MYSQL: デフォルトはサイレントモード、エラーはエラー、エラーは報告されません

PDO: デフォルトはサイレントモード、エラーは報告されませんエラーが発生しても、エラーは報告されません

以前は、PHP はエラーが発生すると直接エラーを報告し、エラー処理は非常に面倒でした。その後、エラーが発生した場合、エラー情報は直接出力されなくなり、クラス オブジェクト (PDOException) に配置されます。

pdo 例外処理設定:

Set PDO::ATTR_ERRMODE、次の 3 つの値:

PDO::ERRMODE_SILENT: デフォルト モード。エラーは積極的に報告されず、$pdo->errorInfo() の形式でエラー情報を積極的に取得する必要があります。

PDO::ERRMODE_WARNING: E_WARNING エラーを発生させ、積極的にエラーを報告します。

PDO::ERRMODE_EXCEPTION: エラー情報を出力するには、try{}cath(){} を使用する必要があります。

例:

方法 1:

<?php
//默认是不提示的 需要用 errorCode() errorInfo();
try{
  $pdo = new PDO("mysql:host=localhost;dbname=jikexueyuan","root","");
  //下面这句是默认设置,有无均可
  $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_SILENT);
}catch(PDOException $e){
  die("数据库连接失败".$e->getMessage());
}
$sql = "insert into stuu values(null,&#39;jike&#39;,&#39;w&#39;,55)";
$res = $pdo->exec($sql);
if($res){
  echo "OK";
}else{
  echo $pdo->errorCode();
  print_r($pdo->errorInfo());
}
ログイン後にコピー

方法 2:

<?php
try{
  $pdo = new PDO("mysql:host=localhost;dbname=jikexueyuan","root","");
  //主动以警告的形式报错
  $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
}catch(PDOException $e){
  die("数据库连接失败".$e->getMessage());
}
$sql = "insert into stuu values(null,&#39;jike&#39;,&#39;w&#39;,55)";
//若有错误直接在浏览器页面中显示错误信息
$res = $pdo->exec($sql);
ログイン後にコピー

3:

<?php
try{
  $pdo = new PDO("mysql:host=localhost;dbname=jikexueyuan","root","");
  //主动抛出异常
  $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION );
}catch(PDOException $e){
  die("数据库连接失败".$e->getMessage());
}
$sql = "insert into stuu values(null,&#39;jike&#39;,&#39;w&#39;,55)";
//用try{}catch(){}抓取异常
try{
  $res = $pdo->exec($sql);
}catch(PDOException $e){
  echo $e->getMessage();
}
ログイン後にコピー

これで終わりです記事全内容、皆様の学習のお役に立てれば幸いです。


関連する推奨事項:

PHP で携帯電話の位置をクエリする方法の詳細な説明

PHP でエラーを通知するための一般的な解決策の詳細な図による説明

PHP は相互ASCIIコードと文字列の変換

以上がphpのPDO例外処理方法の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート