是否可以设置默认的PDO获取模式?

Mat*_*att 71 php pdo

在检索数据之前,我总是要输入:

$STH->setFetchMode(PDO::FETCH_OBJ);
Run Code Online (Sandbox Code Playgroud)

为了使我的代码更具可读性,如果我可以在某处设置默认模式,那将会很棒....

谢谢!

编辑.我本来希望我可以将PDO:FETCH_OBJ添加到我连接到数据库时运行的setAttribute代码,但这似乎不起作用......

小智 134

$connection = new PDO($connection_string);
$connection->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
Run Code Online (Sandbox Code Playgroud)


小智 26

$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 );
Run Code Online (Sandbox Code Playgroud)