带有 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 中的致命错误的主要内容,如果未能解决你的问题,请参考以下文章
如何翻转正面带有标签而背面带有另一个标签的视图 - 参见图片
CakePHP 如何处理带有/不带有 'id' 字段的 HABTM 表?
带有 RecyclerView 的 DialogFragment 比带有 Recyclerview 的 Fragment 慢