首页 > 解决方案 > 未捕获的 PDOException:找不到驱动程序 ... Window XAMPP MySQL PHP 版本 => 7.4.4

问题描述

我已经浏览了所有 StackOverflow 的答案,但没有一个对我的案例有用。

我在 Windows 上使用 XAMPP 和 MySQL 我的 PHP 版本是 7.4.4,在我的 php.ini 中,扩展名未注释,我将它们发布在这里

extension=bz2
extension=curl
;extension=ffi
;extension=ftp
extension=fileinfo
extension=gd2
extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=ldap
extension=mbstring
extension=exif      ; Must be after mbstring as it depends on it
extension=mysqli
;extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
extension=pdo_mysql
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
extension=pdo_sqlite
;extension=pgsql
;extension=shmop
extension=php_pdo.dll
extension=php_pdo.dll 
extension=php_odbc.dll
extension=php_pdo_odbc.dll

我已经完成了之前所有答案所说的所有操作,例如取消注释 pdo_mysql (已经取消注释)并且我添加了几行,我在这里再次提到:

extension=php_pdo.dll
extension=php_pdo.dll 
extension=php_odbc.dll
extension=php_pdo_odbc.dll

哪些不在 php.ini 文件中,但我已经添加了它们。

我环顾了整个网络,似乎要让这个连接正常工作,唯一要做的就是取消注释那几行,作为额外的我添加了那个 .dll 引用,因为我无法得到它工作。

失败的代码如下

$dbPassword = "admin";
$dbUser = "admin";
$dbServer = "localhost";
$dbName = "PHP";

$connection = new PDO('mysql:host='.$dbServer.';dbname='.$dbName,$dbUser,$dbPassword);
print_r($connection);

有谁知道如何在 Windows 上正确设置此驱动程序?

标签: phpmysqlpdo

解决方案


问题是我有两个 php.ini,一个来自 XAMPP,另一个位于以前安装的另一个文件夹中。

由于 PATH 变量指向旧变量,因此它没有选择我的更改。

通过取消注释正确的 php.ini 来修复


推荐阅读