Zend框架:未定义的类常量“MYSQL_ATTR_INIT_COMMAND”

正如你可能已经知道我从以前的问题从Ubuntu切换到Windows。 我正在研究ubuntu上的Zend Framework,现在正在使用Windows中的相同项目。 由于这个切换,我正在面对一些在Ubuntu中没有发生的问题。

现在,当我login页面时,在萤火虫控制台中有以下错误:

<b>Fatal error</b>: Undefined class constant 'MYSQL_ATTR_INIT_COMMAND' in <b>C:\wamp\www\vcred\library\Zend\Db\Adapter\Pdo\Mysql.php</b> on line <b>93</b><br /> 

你们是否知道这种错误是什么,解决方法是什么?

我有以下configuration数据库。

 resources.db.adapter = "Pdo_Mysql" resources.db.params.host = "localhost" resources.db.params.username = "root" resources.db.params.password = "" resources.db.params.dbname = "test" resources.db.params.charset = "utf8" 

谢谢

Solutions Collecting From Web of "Zend框架:未定义的类常量“MYSQL_ATTR_INIT_COMMAND”"

这看起来与PHP的错误跟踪器上的这个错误有关: 错误#47224 MYSQL_ATTR_INIT_COMMAND不再可用

它似乎已被修复SVN – 但也许不是在你使用的PHP版本?

引用其中一条评论:

[2009-07-02 06:43 UTC] mg at artigo dot pl
临时解决方案是使用INT值( 1002 )而不是常量。

这可能是一个临时的解决方案,直到你安装了一个新版本的PHP,其中的错误是固定的?

我只是有与PHP 5.2.6相同的错误,我所要做的就是打开php.ini (例如,在Windows上: C:\ Windows \ php.ini ,或在Ubuntu上: / etc / php5 / apache2 / php .ini或sg。就像这样)在文本编辑器中,并从以下行中删除分号

 ;extension=php_pdo_mysql.dll 

所以在php.ini中看起来就像这样:

 extension=php_pdo_mysql.dll 

这解决了我的问题。

看起来像PHP 5.3中的一个Windows bug ,刚刚在SVN中修复。 你可能想尝试更新到最新的PHP版本,看看问题是否仍然存在。

我得到了同样的错误,在debian6上,当我还没有安装php-mysql所以我只是简单地安装这个,就像这样

 apt-get install php5-mysql /etc/init.d/apache2 restart 

我只是把它加在这里,以防其他人有同样的问题,为他们节省几分钟的研究。