So richten Sie die PHP-PDO-Fehlerbehandlung ein

藏色散人
Freigeben: 2023-03-17 06:54:01
Original
1543 Leute haben es durchsucht

php-PDO-Fehlerbehandlungs-Einstellungsmethode: 1. Legen Sie „PDO::ERRMODE_SILENT“ fest und rufen Sie dann die Fehlerinformationen in der Form „$pdo->errorInfo()“ ab. 2. Legen Sie „PDO::ERRMODE_WARNING“ fest check „E_WARNING“ „Fehler; 3. Setzen Sie „PDO::ERRMODE_EXCEPTION“ und geben Sie dann die Fehlermeldung mit „try{}cath(){}“ aus.

So richten Sie die PHP-PDO-Fehlerbehandlung ein

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, Dell G3-Computer.

php Detaillierte Erläuterung der PDO-Ausnahmebehandlung

Ausnahmebehandlung:

PHP: Standardmäßig werden Fehler direkt gemeldet

MYSQL: Standardmäßig ist der stille Modus, wenn ein Fehler auftritt, wird kein Fehler gemeldet

PDO : Die Standardeinstellung ist der stille Modus. Wenn ein Fehler auftritt, wird ein Fehler gemeldet, es wird kein Fehler gemeldet

Wenn PHP in der Vergangenheit auf einen Fehler stieß, meldete es einen Fehler direkt und die Fehlerbehandlung war ziemlich mühsam. Wenn später ein Fehler auftritt, werden die Fehlerinformationen nicht mehr direkt ausgegeben und in einem Klassenobjekt (PDOException) abgelegt.

pdo-Ausnahmebehandlungseinstellungen:

Setzen Sie PDO::ATTR_ERRMODE, das die folgenden drei Werte hat:

PDO ::ERRMODE_SILENT: Der Standardmodus meldet Fehler nicht aktiv. Sie müssen Fehlerinformationen aktiv in Form von $pdo->errorInfo() abrufen.

PDO::ERRMODE_WARNING: Einen E_WARNING-Fehler auslösen und Fehler proaktiv melden.

PDO::ERRMODE_EXCEPTION: Sie müssen try{}cath(){} verwenden, um Fehlerinformationen auszugeben.

Beispiel:

Methode eins:

<?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());
}
Nach dem Login kopieren

Methode zwei:

<?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);
Nach dem Login kopieren

Methode drei:

<?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();
}
Nach dem Login kopieren

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo richten Sie die PHP-PDO-Fehlerbehandlung ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!