我试图将PDO设置为使用XAMPP连接到MSSQL数据库,我正在运行PHP 7,我花了很多时间遍历互联网尝试克服“未捕获异常'PDOException',消息'找不到驱动程序' “ 错误,但到目前为止我没有运气。
我使用的驱动程序来自:HERE(v4.0)
已安装Microsoft OCDB驱动程序13:HERE
我已安装Microsoft Visual C ++ 2015,但我仍然遇到同样的错误,这是我到目前为止所尝试的。
我开始下载为PHP7设计的驱动程序,我将它们安装到: C:\ XAMPP \ PHP \分机
之后我将扩展名添加到php.ini文件中:C:\ xampp \ php
延长= php_sqlsrv_7_ts_x64.dll
延长= php_pdo_sqlsrv_7_ts_x64.dll
延长= php_sqlsrv_7_nts_x64.dll
延长= php_pdo_sqlsrv_7_nts_x64.dll
尝试线程安全和非线程安全。
我也将extension_dir设置为正确的文件夹。
<?php
$path = php_ini_loaded_file();
echo 'The loaded file path is :' . $path;
echo '<br><br>';
$loadedExt = get_loaded_extensions();
print_r ($loadedExt);
$db = new PDO('sqlsrv:host=********;dbname=******;charset=utf8', 'username', 'password');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
?>
这是我正在使用的代码^^,执行后我得到了这个:
The loaded file path is :C:\xampp\php\php.ini
Array ( [0] => Core [1] => bcmath [2] => calendar [3] => ctype [4] => date [5] => ereg [6] => filter [7] => ftp [8] => hash [9] => iconv [10] => json [11] => mcrypt [12] => SPL [13] => odbc [14] => pcre [15] => Reflection [16] => session [17] => standard [18] => mysqlnd [19] => tokenizer [20] => zip [21] => zlib [22] => libxml [23] => dom [24] => PDO [25] => bz2 [26] => SimpleXML [27] => wddx [28] => xml [29] => xmlreader [30] => xmlwriter [31] => apache2handler [32] => openssl [33] => curl [34] => fileinfo [35] => gd [36] => gettext [37] => mbstring [38] => exif [39] => mysql [40] => mysqli [41] => pdo_mysql [42] => pdo_sqlite [43] => Phar [44] => mhash )
Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in C:\xampp\htdocs\BasicPDO\index.php:20 Stack trace: #0 C:\xampp\htdocs\BasicPDO\index.php(20): PDO->__construct('sqlsrv:host=col...', 'paisjd3', 'Famousrat6') #1 {main} thrown in C:\xampp\htdocs\BasicPDO\index.php on line 20
每次我尝试使用许多不同的解决方案来尝试克服这个问题时,我仍然会得到同样的错误,但仍然无法解决这个问题,我真的很新的PHP所以你可以提供任何帮助将非常感激。
谢谢, 插口。
编辑:如果有人能提供任何见解,仍然会寻求一些帮助,我们将不胜感激。