【发布时间】:2017-11-04 16:39:58
【问题描述】:
我只是尝试使用 symfony 3,我正在使用 Doctrine ORM 将数据插入数据库。 当我尝试运行我的查询时
$customer = new Customer();
$customer->setAddress('Some Address');
$customer->setName('Customer 1');
$order->setQuantity('100');
$order->setDate(date('Y-m-d'));
$order->setCustomer($customer);
$em = $this->getDoctrine()->getManager();
$em->persist($customer);
$em->persist($order);
$em->flush();
但它返回一个异常:
Uncaught PHP Exception Doctrine\DBAL\Exception\DriverException: "An exception occurred in driver: could not find driver" at /home/hei/Sites/practice/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php line 121
Parameters.yml:
parameters:
database_host: 127.0.0.1
database_port: null
database_name: practice
database_user: root
database_password: null
Config.yml
doctrine:
dbal:
driver: pdo_mysql
host: '%database_host%'
port: '%database_port%'
dbname: '%database_name%'
user: '%database_user%'
password: '%database_password%'
我还检查扩展是否通过 php -m 和 phpinfo() 启用和加载。它说 PDO 和 PDO_Mysql 已启用。
然后在php.ini中加入这两行:
extension=pdo.so
extension=pdo_mysql.so
但我仍然遇到相同的 PDO 异常。
我的操作系统是 Ubuntu 17.1
【问题讨论】:
-
cli 和 web 的 php 版本是否相同?创建脚本
<?php phpinfo();并检查那里是否有mysql扩展
标签: php mysql symfony pdo doctrine-orm