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

发布于 2024-09-26 17:07:37 字数 327 浏览 3 评论 0原文

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

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

为了使我的代码更具可读性,如果我可以在某处设置默认模式,那就太好了......

谢谢!

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

Before I retrieve data I always have to type:

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

In the interest of making my code more readable it would be great if I could set a default mode somewhere....

Thanks!

Edit. I was originally hoping I could add PDO:FETCH_OBJ to the setAttribute code I run when I connect to the DB, but that doesn't seem to work...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

鸵鸟症 2024-10-03 17:07:37
$connection = new PDO($connection_string);
$connection->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
$connection = new PDO($connection_string);
$connection->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
戒ㄋ 2024-10-03 17:07:37

根据 docs 第四个可选参数可以保存一个键=> 驱动程序特定连接选项的值数组。

$dsn = "mysql:host=$db_server;dbname=$db_name;port=$db_port;charset=utf8mb4";
$driver_options = [
   PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
   PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ,
];               
$dbh = new PDO( $dsn, $db_user, $db_pass, $driver_options );

According to the docs a fourth, optional, parameter can hold a key=>value array of driver-specific connection options.

$dsn = "mysql:host=$db_server;dbname=$db_name;port=$db_port;charset=utf8mb4";
$driver_options = [
   PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
   PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ,
];               
$dbh = new PDO( $dsn, $db_user, $db_pass, $driver_options );
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文