Doctrine-module无法找到驱动程序PDO

时间:2014-10-15 14:35:24

标签: php pdo doctrine

在过去的几天里我遇到了一个非常烦人的问题......有很多次问过类似的问题,但他们的解决方案都没有对我有用。

主要是doctrine-module无法找到我的PDO驱动程序:

vendor/doctrine/doctrine-module/bin/doctrine-module orm:convert-mapping 
--namespace="Album\\Entity\\" --force --from-database annotation ./module/Album/src/

[PDOException]
could not find driver

我已经安装了PDO并且它可以在我的其他项目中运行... PHP CLI已被证明对其他用户来说是一个问题,但它似乎可供我使用:

$ php -m | grep -G PDO -i
PDO
pdo_mysql
pdo_sqlite

我甚至可以这样做:

$ php -r "die(new PDO("localhost"));"

Fatal error: Uncaught exception 'PDOException' with message 'invalid data source name' in Command line code:1
Stack trace:
#0 Command line code(1): PDO->__construct('localhost')
#1 {main}

对我来说,PHP-CLI确实支持PDO(以及支持mysql)...

任何人都可以帮助我吗?

编辑: 这是我的配置:显然掩盖了密码:)

'doctrine' => array(
    'connection' => array(
        'orm_default' => array(
            'driverClass' => 'Doctrine\DBAL\Driver\PDOPgSql\Driver',
            'params' => array(
                'user' => 'zend_tutorial',
                'password' => '**********',
                'host' => '127.0.0.1',
                'dbname' => 'zend_tutorial',
            ),
        ),
    ),
),

1 个答案:

答案 0 :(得分:2)

问题是DrvierClass配置为 Jenko 说,

这:

'Doctrine\DBAL\Driver\PDOPgSql\Driver'

应改为:

'Doctrine\DBAL\Driver\PDOMySql\Driver'

注意MySQL!

感谢Jenko:)