PDO Exception Handling Configuration
As a developer, you may prefer to have PDO throw exceptions by default. 따라서 데이터베이스 연결을 설정할 때마다 오류 처리 모드를 명시 적으로 설정할 필요가 없습니다. $ dbh-> setattribute (pdo :: attr_errmode, pdo :: errmode_exception)를 사용하여 오류 모드를 수동으로 설정할 수 있지만, 기본 동작으로 만드는 방법이 있는지 궁금 할 것입니다.
기본값 예외 처리
불행히도, php.ini 파일에 기본적으로 예외를 던지도록 pdo를 설정할 수있는 내장 구성 파일 또는 옵션이 없습니다. PHP는 전 세계적으로 오류 처리를 처리하고 PDO에만 국한되지 않기 때문입니다.
솔루션
[
[
&&&]$pdo = new PDO('mysql:host=localhost;dbname=someDatabase', 'username', 'password', array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ));
오류 처리 모드를 포함하여 PDO 생성자에게 다양한 옵션을 전달할 수 있습니다. Somedatabase ','사용자 이름 ','비밀번호 ', 배열 ( pdo :: attr_errmode = & gt; pdo :: errmode_exception ));
2. 래퍼 클래스
class MyPDO extends PDO { public function __construct($dsn, $username, $password) { parent::__construct($dsn, $username, $password, array( PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION )); } }또는 PDO를 확장하고 항상 오류 모드를 예외 모드로 설정하는 래퍼 클래스를 생성 할 수 있습니다. public function __construct ($ dsn, $ username, $ password) { parent :: __ construct ($ dsn, $ username, $ password, array ( pdo :: attr_errmode = & gt; pdo :: errmode_exception )); } }
이 접근법을 사용하면 일반 PDO 클래스 대신 사용자 정의 PDO 클래스를 사용할 수 있으며 항상 예외 처리 동작을 얻을 수 있습니다. dbname = somedatabase ','username ','password ');
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3