【问题标题】:Symfony fos:user:create through error "could not find driver", (Xampp with multiple verison of PHP)Symfony fos:user:create through error "could not find driver", (Xampp with multiple version 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"

【问题讨论】:

    标签: php mysql symfony fosuserbundle


    【解决方案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 命令,它会工作!!

    【讨论】:

      猜你喜欢
      • 2022-12-26
      • 2022-12-02
      • 2017-03-29
      • 1970-01-01
      • 2022-06-21
      • 2017-02-24
      • 2017-09-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多