Ето какво PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
е за. Използвайте го така:
$pdo = new PDO(
'mysql:host=localhost;port=3306;dbname=mydb;charset=utf8'
, 'user'
, 'pass'
, [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ]
);
Когато се използва по този начин, грешките всъщност се хвърлят като изключения. Това означава, че ако възникне грешка с fetch (или други методи, използващи този pdo обект), ще бъде хвърлено изключение и методът всъщност изобщо няма да се върне. Това е много ефективен начин за справяне с грешки в PDO. Сега знаете, че ако fetch върне стойност, не са възникнали грешки и следователно, ако е false, тогава заявката не е върнала никакви записи.