PDO: Kann ich die Standardfehlerbehandlung konfigurieren, um Ausnahmen auszulösen?
Um die Fehlerbehandlung von PDO zu verbessern, äußern Sie den Wunsch, dies zu tun Ausnahmen werden standardmäßig ausgelöst, anstatt den Fehlermodus manuell festzulegen.
Gemäß Ihrem Codebeispiel verwenden Sie derzeit die Methode setAttribute(), um Geben Sie PDO::ERRMODE_EXCEPTION für jede Verbindung an. Während dieser Ansatz für bestimmte Instanzen funktioniert, suchen Sie nach einer globalen Konfiguration, die für alle PDO-Verbindungen gilt.
Leider gibt es in php.ini oder anderswo keine Konfigurationsoption, um den Standardfehlermodus für PDO festzulegen. Sie müssen es explizit mit setAttribute() für jede von Ihnen erstellte Verbindung festlegen.
Um diese Unannehmlichkeiten zu beheben, können Sie eine benutzerdefinierte Wrapper-Klasse oder Bibliothek erstellen, die den Fehlermodus während der Erstellung festlegt. Hier ist ein Beispiel:
class Db { public function __construct() { $this->pdo = new PDO('...', '...', '...', [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ]); } // Other database operations... }
Durch die Verwendung dieses Wrappers können Sie Ihren Code vereinfachen und sicherstellen, dass alle PDO-Verbindungen Ausnahmen auslösen:
try { $db = new Db(); // Queries and operations } catch (PDOException $e) { // Error handling }
Dieser Ansatz führt zwar eine zusätzliche Abhängigkeit ein, nämlich Bietet eine praktische Lösung zum Erzwingen der standardmäßigen Ausnahmeauslösung für PDO.
Das obige ist der detaillierte Inhalt vonKann die Standardfehlerbehandlung von PDO so konfiguriert werden, dass Ausnahmen ausgelöst werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!