web-dev-qa-db-ja.com

デフォルトのPDOフェッチモードを設定することは可能ですか?

データを取得する前に、次のように入力する必要があります。

$STH->setFetchMode(PDO::FETCH_OBJ);

コードを読みやすくするために、デフォルトモードをどこかに設定できると便利です。

ありがとう!

編集。元々、PDO:FETCH_OBJを setAttribute DBに接続するときに実行するコードに追加できると思っていましたが、うまくいかないようです...

70
Matt
$connection = new PDO($connection_string);
$connection->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
132
Anon
$dsn = 'mysql:Host='.$db_server.';dbname='.$db_name.';port='.$db_port;
$driver_options = array(
   PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'",
   PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
   PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ,
);               
$dbh = new PDO( $dsn, $db_user, $db_pass, $driver_options );