PDO Configuration
. В качестве разработчика вы можете предпочесть, чтобы по умолчанию было исключено исключения для броска PDO. Это устраняет необходимость явного установления режима обработки ошибок каждый раз, когда вы устанавливаете подключение к базе данных. Пока вы можете вручную установить режим ошибки, используя $ dbh-> setattribute (pdo :: attr_errmode, pdo :: errmode_exception), вы можете задаться вопросом, есть ли способ сделать это поведением по умолчанию. Обработка исключений
, к сожалению, в файле php.ini нет встроенного файла конфигурации или опции, который позволяет устанавливать PDO для бросания исключений по умолчанию. Это связано с тем, что PHP обрабатывает обработку ошибок по всему миру, и это не зависит от PDO.
Solution
, чтобы достичь желаемого поведения, у вас есть два варианта:
1. Аргумент конструктора
вы можете передать массив параметров конструктору PDO, включая режим обработки ошибок:
$ pdo = new PDO ('mySQL: host = localhost; dbname = nomeedatabase ', «имя пользователя», «пароль», массив ( Pdo :: attr_errmode = & gt; Pdo :: errmode_exception ));
$pdo = new PDO('mysql:host=localhost;dbname=someDatabase', 'username', 'password', array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ));
] Альтернативно, вы можете создать класс обертки, который расширяет PDO и всегда устанавливает режим ошибки в режим исключения:
класс MyPDO Extends PDO { публичная функция __construct ($ dsn, $ username, $ password) { Parent :: __ Construct ($ dsn, $ username, $ пароль, массив ( Pdo :: attr_errmode = & gt; Pdo :: errmode_exception )); } }. dbname = anomeatabase ',' username ',' password ');]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3