не перехватывает PDOException в пространстве имен
Я могу'не знаю, как я могу пойматьPDOException
в следующем коде, пожалуйста, скажите мне, где бросить исключение в следующем коде?
у меня есть (каталог):
- folder
-1) b.php
-2) c.php
- autoloader
в :b.php
И в :c.php
class c{
function __construct(){
print("<p>you are in class c</p><p>");
if(DB_TYPE == 'mysql')
$pdoString=DB_TYPE.':dbname='.DB_NAME.';host='.DB_HOST;
$pdoUsername=DB_USERNAME;
$pdoPass='1';//DB_PASS; in this line I enter wrong password
try{
$this->pdo = new PDO($pdoString, $pdoUsername, $pdoPass);
}catch(PDOException $e){ //we can't catch exception here!
die('</p><p> Error DataBase Connection: '.$e->getMessage()."</p>");
}
}
}
?>
Я ввел неправильный пароль, я ожидаю, что у меня есть исключениеtry catch
блок, но есть этот вывод:
you are in class c
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)' in C:\xampp\htdocs\TEST\folder\c.php:17 Stack trace: #0 C:\xampp\htdocs\TEST\folder\c.php(17): PDO->__construct('mysql:dbname=kn...', 'root', '1') #1 C:\xampp\htdocs\TEST\folder\b.php(10): folder\c->__construct() #2 {main} thrown in C:\xampp\htdocs\TEST\folder\c.php on line 17