Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PDO::MYSQL\u ATTR\u MAX\u BUFFER\u SIZE的PHP中出现致命错误_Php_Mysql_Fatal Error_Class Constants - Fatal编程技术网

使用PDO::MYSQL\u ATTR\u MAX\u BUFFER\u SIZE的PHP中出现致命错误

使用PDO::MYSQL\u ATTR\u MAX\u BUFFER\u SIZE的PHP中出现致命错误,php,mysql,fatal-error,class-constants,Php,Mysql,Fatal Error,Class Constants,对于一个PHP web应用程序,我遇到了一个PDO::MYSQL_ATTR_MAX_BUFFER_SIZE的致命错误,但只有在非常罕见的托管计划中。这是说这个常数不可用。我如何检测到它不可用并且不使用它 我的意思是,我可以使用if(!defined(…)if/then检查,但是在那些没有使用PDO编译MYSQL_ATTR_MAX_BUFFER_SIZE的系统上,这仍然会导致致命错误吗?请注意,关于MYSQL\u ATTR\u MAX\u BUFFER\u SIZE和mysqlnd,有一个已知的b

对于一个PHP web应用程序,我遇到了一个PDO::MYSQL_ATTR_MAX_BUFFER_SIZE的致命错误,但只有在非常罕见的托管计划中。这是说这个常数不可用。我如何检测到它不可用并且不使用它

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

我猜您没有正确使用。您需要为它提供一个字符串

if( defined( 'PDO::MYSQL_ATTR_MAX_BUFFER_SIZE' ) ) // note the quotes
{
    // do something useful with PDO::MYSQL_ATTR_MAX_BUFFER_SIZE
}
上面的示例在我的设置(PHP5.3.20,其中未定义
PDO::MYSQL\u ATTR\u MAX\u BUFFER\u SIZE
)中没有发出任何通知/警告/错误,我猜是使用了
error\u reporting(E|u ALL | E| u STRICT)
您没有正确使用。您需要为它提供一个字符串

if( defined( 'PDO::MYSQL_ATTR_MAX_BUFFER_SIZE' ) ) // note the quotes
{
    // do something useful with PDO::MYSQL_ATTR_MAX_BUFFER_SIZE
}
上面的示例在我的设置(PHP5.3.20,其中未定义
PDO::MYSQL\u ATTR\u MAX\u BUFFER\u SIZE
)中使用
error\u报告(E|ALL | E_STRICT)
,没有发出任何通知/警告/错误