【发布时间】:2022-04-18 14:11:34
【问题描述】:
我们最近将应用程序迁移到了新服务器。自从我们迁移以来,我们遇到了很多 PHP message: PHP Fatal error: Call to undefined method stdClass::toArray() 错误。我已经发现,这可能与我们的 SQL 语句在新环境中返回对象而不是数组有关。
当我们使用 ADODB 时,我也已经发现,这种行为是因为 $ADODB_FETCH_MODE。在我们的应用程序中,它设置为ADODB_FETCH_DEFAULT 。正如documentation 所说,这意味着
记录集以 PHP 驱动程序提供的默认值返回。如果编写跨数据库应用程序,不建议使用此值
所以我的假设是“新”PHP 驱动程序的配置与旧驱动程序不同。但是如何才能知道 PHP 驱动程序的默认配置是什么,以及如何在不更改实际应用程序代码的情况下更改它?
谢谢!
【问题讨论】:
-
驱动程序及其默认值被编译成 PHP,所以除非您想从头开始重新编译,否则我建议添加几行新行来设置您想要的值,而不是依赖默认值。跨度>
-
我就是这么想的。希望有一种方法可以在 php.ini 或类似的东西中配置它。