【问题标题】:PDOException could not find driver on Zend Framework 2 + DoctrinePDOException 在 Zend Framework 2 + Doctrine 上找不到驱动程序
【发布时间】:2013-06-12 00:01:20
【问题描述】:

我正在尝试从此manual 安装 Zend Framework 2 + Doctrine,但 PDO 驱动程序有一些问题。 Doctrine 正在尝试连接到我的 MySQL 服务器,然后尝试创建模式:

./vendor/bin/doctrine-module orm:schema-tool:create

我有这个错误:

 [PDOException]
 could not find driver

这是我的配置/autoload/doctrine.local.php:

 return array(   'doctrine' => array(
     'connection' => array(
       'orm_default' => array(
         'driverClass' =>'Doctrine\DBAL\Driver\PDOMySql\Driver',
         'params' => array(
           'driver'   => 'pdo_mysql', 
           'host'     => 'localhost',
           'port'     => '3306',
           'user'     => 'root',
           'password' => 'password',
           'dbname'   => 'blog', 
 )))));

我有 PHP 5.3.5,我在 php.ini 中取消了 ;extension=php_pdo_mysql.dll 的注释,也没有注释。但是php -m | grep -i pdo 给了我:

PDO

仅限。我知道它也应该是pdo_mysql,但我正在尝试一切,但它没有出现。

无论如何,PDO 驱动程序在我在此服务器上的另一个项目中运行良好,我没有使用 Zend 和 Doctrine。

【问题讨论】:

  • 在执行php -m 时,您应该同时看到PDOpdo_mysql。由于最后一个是适配器。如果pdo_mysql 未列出,则扩展程序未正确激活。就这么简单:)
  • @netiul 我应该如何正确激活扩展?没有安装驱动程序的手册,据我所知,它应该默认安装在我的服务器上。

标签: php mysql pdo doctrine-orm zend-framework2


【解决方案1】:

哦,是的。我刚刚解决了一个问题。我要去这个page 并想在其他任何地方找到我的 php.ini 文件,也许是 PHP 文件夹 - 这是"C:\Users\%username%\AppData\Local\VirtualStore\Program Files (x86)\wamp\bin\php\php5.3.5" 中的另一个文件,并且有一行

;extension=php_pdo_mysql.dll

没有取消注释。我没有注释它并且它有效!

【讨论】:

  • 好吧,我也遇到了同样的问题,但是由于我使用的是 sqlite,所以我没有注释;extension=php_pdo_sqlite.dll,当我在 ZF2 中连接 sqlite DB 时添加了一个 try catch 时,我知道了这个错误@ 987654322@(我知道这与所问的问题无关,但我相信这会帮助某人快速找到问题)
猜你喜欢
  • 1970-01-01
  • 2016-09-03
  • 2022-01-23
  • 2017-06-07
相关资源
最近更新 更多