带有 PDO::MYSQL_ATTR_MAX_BUFFER_SIZE 的 PHP 中的致命错误

Posted

技术标签:

【中文标题】带有 PDO::MYSQL_ATTR_MAX_BUFFER_SIZE 的 PHP 中的致命错误【英文标题】:Fatal Error in PHP with PDO::MYSQL_ATTR_MAX_BUFFER_SIZE 【发布时间】:2013-01-13 19:44:07 【问题描述】:

在使用 php Web 应用程序时,我遇到了 PDO::mysql_ATTR_MAX_BUFFER_SIZE 的致命错误,但仅限于非常罕见的托管计划。这是说这个常数不可用。如何检测到它不可用而不使用它?

我的意思是,我可以使用 if (!defined(...)) if/then 检查,但是在那些未使用 PDO 编译 MYSQL_ATTR_MAX_BUFFER_SIZE 的系统上,这仍然会出现致命错误吗?请注意,有一个关于 MYSQL_ATTR_MAX_BUFFER_SIZE 和 mysqlnd 的已知错误,在安装了 mysqlnd 的情况下它不会被编译。该错误被标记为“不会修复”。

【问题讨论】:

【参考方案1】:

我猜你没有正确使用defined()。您需要为其提供一个字符串。

if( defined( 'PDO::MYSQL_ATTR_MAX_BUFFER_SIZE' ) ) // note the quotes

    // do something useful with PDO::MYSQL_ATTR_MAX_BUFFER_SIZE

上面的示例在我的设置中没有发出任何通知/警告/错误(PHP 5.3.20,其中未定义 PDO::MYSQL_ATTR_MAX_BUFFER_SIZE),使用 error_reporting( E_ALL | E_STRICT )

【讨论】:

以上是关于带有 PDO::MYSQL_ATTR_MAX_BUFFER_SIZE 的 PHP 中的致命错误的主要内容,如果未能解决你的问题,请参考以下文章

带有和不带有聚合的 sql 查询

如何翻转正面带有标签而背面带有另一个标签的视图 - 参见图片

CakePHP 如何处理带有/不带有 'id' 字段的 HABTM 表?

带有滚动的 Div 和带有绝对位置的内容

带有 RecyclerView 的 DialogFragment 比带有 Recyclerview 的 Fragment 慢

访问控制允许带有和不带有 www 的来源