Oto, co PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
jest dla. Użyj go w ten sposób:
$pdo = new PDO(
'mysql:host=localhost;port=3306;dbname=mydb;charset=utf8'
, 'user'
, 'pass'
, [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ]
);
W przypadku użycia w ten sposób błędy są zgłaszane jako wyjątki. Oznacza to, że jeśli wystąpi błąd podczas pobierania (lub innych metod korzystających z tego obiektu pdo), zostanie zgłoszony wyjątek, a metoda w ogóle nie zwróci. Jest to bardzo skuteczny sposób obsługi błędów w PDO. Teraz wiesz, że jeśli fetch zwróci wartość, nie wystąpiły żadne błędy, a zatem jeśli jest ona fałszywa, zapytanie nie zwróciło żadnych rekordów.