也许这是一个显而易见的问题,但我想确定。
我怎么知道MySQLnd是否是活动驱动程序?
我正在运行PHP 5.3和MySQL 5.1.37。在phpinfo()中,列出了mysqlnd,但是仅凭此我不确定我是使用MySQLnd还是旧驱动程序…
提取phpinfo()输出
mysql MySQL Support enabled Active Persistent Links 0 Active Links 0 Client API version mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27 $ mysqli MysqlI Support enabled Client API library version mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27 $ Active Persistent Links 0 Inactive Persistent Links 0 Active Links 26 mysqlnd mysqlnd enabled Version mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27 $ PDO PDO support enabled PDO drivers mysql pdo_mysql PDO Driver for MySQL enabled Client API version mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27 $
我正在使用PDO,并且PDO驱动程序显示mysql …
这应该可以解决问题:
<?php $mysqlnd = function_exists('mysqli_fetch_all'); if ($mysqlnd) { echo 'mysqlnd enabled!'; }
要检测其是否为活动的PDO驱动程序,请创建您的MySQL PDO对象,然后:
if (strpos($pdo->getAttribute(PDO::ATTR_CLIENT_VERSION), 'mysqlnd') !== false) { echo 'PDO MySQLnd enabled!'; }