PDOException找不到驱动程序Laravel 5.4

时间:2017-02-23 18:43:06

标签: php mysql laravel wamp

您好我想从sqlite迁移到mysql,我安装WAMP服务器,配置它并正常工作,但是......

 [PDOException]
  could not find driver

我想要

时看到这个错误
php artisan migrate

选择PHP:5.6.25,但在7.0.10上也不行

来自wamp的php.ini

;extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=pgsql.so
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll

我的dtabase.php

 'default' => env('DB_CONNECTION', 'mysql'),


    'connections' => [

        'sqlite' => [
            'driver'   => 'sqlite',
            'database' => database_path('database.sqlite'),
            'prefix'   => '',
        ],

        'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'mwebsite'),
            'username' => env('DB_USERNAME', 'root'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
        ],

和我的.env

DB_HOST=127.0.0.1
DB_DATABASE=mwebsite
DB_USERNAME=root
DB_PASSWORD=

// php信息 配置命令

cscript /nologo configure.js "--enable-snapshot-build" "--enable-debug-pack" "--with-pdo-oci=c:\php-sdk\oracle\x64\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x64\instantclient_12_1\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--without-analyzer" "--with-pgo"

PDO

PDO support enabled
PDO drivers mysql, pgsql, sqlite

1 个答案:

答案 0 :(得分:0)

这与Wamp与Xampp无关。

使用laravel 5的例子:

php artisan migrate:install

给出:

  

PDOException:找不到驱动程序

由于Wamp有多个php环境,你必须确保php路径是正确的(包括切换php版本时的composer php路径)。

apache和php cli版本使用的php版本可能不一样,具体取决于你的%PATH%变量。

可能你的php可执行文件路径不正确。 使用cmd,尝试

set | findstr php

你会看到你的实际php二进制文件的加载位置。 相应地更改路径变量(使用系统设置,用户配置文件,环境变量)并启动新的cmd实例。 ÿ

然后您可以使用

检查当前cli版本的php中是否加载了pdo_mysql扩展名
php -i | findstr mysql

一旦整理完毕,不要忘记更新composer php路径(只需重新安装)。