Symfony fos:user:create through error "could not find driver", (Xampp with multiple versio
Posted
技术标签:
【中文标题】Symfony fos:user:create through error "could not find driver", (Xampp with multiple version of PHP)【英文标题】:Symfony fos:user:create through error "could not find driver", (Xampp with multiple verison of PHP) 【发布时间】:2021-04-20 11:30:12 【问题描述】: 简介:我在一个使用 phpStorm 的 Symfony 项目中。我正在尝试在 DB (xampp mysql) 上创建一个 fos 用户。
Symfony CLI 版本 v4.21.6 作曲家版本 1.10.19
C:\Program Files\Symfony\name_projectFolder>php -v
PHP 8.0.0 (cli)
C:\Program Files\Symfony\name_projectFolder>symfony php -v
PHP 7.4.14 (cli)
使用第一个命令,我们看到默认使用的实际 php 版本(8.0.0),但我的项目不支持它,所以我安装了另一个(在 xampp 文件夹中,过程正确)并告诉项目使用这个新版本 (7.4.14) 而不是默认版本。
设置项目应该使用哪个php版本:
C:\Program Files\Symfony\name_projectFolder>echo 7.4 > .php-version
查看我们拥有的 PHP 版本列表:
C:\Program Files\Symfony\name_projectFolder>symfony local:php:list
左侧的突出显示的数字是项目正在使用的实际版本。 右边的星号表示默认的系统PHP版本。
(信息: 如果你想使用一个普通的命令,你需要指定它应该引用哪个 PHP 版本,以便运行它。 为此,只需在普通命令之前添加“symfony”字样,因为它将使用项目设置而不是系统设置。)
开始创建 fos 用户的过程:(正如我们之前所说,我们使用“symfony”这个词来“告诉”命令使用 7.4 PHP 版本,请记住,通常你不会这样做)
C:\Program Files\Symfony\name_projectFolder>symfony php bin\console fos:user:create
您会收到此错误:
简而言之"An exception occurred in driver: could not find driver"
【问题讨论】:
【参考方案1】:解决方案
因为你有两个PHP版本,在新的版本中你需要启用pdo_mysql扩展,而通常没有。
停止 XAMPP 控制器中的 Apache 服务器。
只需进入文件夹C:\xampp\php7_4
并打开文件php.ini
搜索 (CTRL+F) pdo_mysql 并取消注释/删除“;”
之前 ;extension=pdo_mysql
之后 extension=pdo_mysql
保存更改
启动 Apache 服务器并重新运行 symfony php bin\console fos:user:create
命令,它会工作!!
【讨论】:
以上是关于Symfony fos:user:create through error "could not find driver", (Xampp with multiple versio的主要内容,如果未能解决你的问题,请参考以下文章