PHP PDO ODBC MSSQL 连接

PHP PDO ODBC MSSQL connection

我已经按照 PHP 官方文档在 IIS7 上安装了 PHP,并且安装成功。我可以 运行 PHP 个文件,我的网站没问题。 但是我无法使用 PDO 和 ODBC 驱动程序连接到我在 MSSQL 上的数据库。我已经仔细设置了 php.ini,我认为一切都很好。此外,我还认为 ODBC 在 Windows 上是原生的,而 PDO 包含在最新的 PHP 版本中(我的是 5.5.36)。

这是我的连接代码:

define("UID", 'uid');
define("PWD", 'pwd');
define("DSN", 'odbc:decheterie');
// where 'decheterie' is the dataSource set in the ODBC Connection Manager

try {
    $pdo = new PDO(DSN, UID, PWD);
} catch (PDOException $e) {
    die("Error! ".$e->getMessage());
}

我得到的错误是:

Error! Could not find driver

如果我 运行 a php -m 我可以看到 PDO 和 ODBC 模块已正确加载。 但是 PDO::getAvailableDrivers() returns 是一个空数组,它可以在 phpinfo() 中验证,它在 'PDO drivers' 部分显示 'no value'。

我已经阅读了很多帖子和文章,每次响应都被验证为 'problem solving' 它在我的配置中已经很好了。

如果有人能帮助它,那将是有福的;)

已解决!

答案在上面的评论里。您需要 DL php_pdo_sqlsrv_*.dll

在您的 PHP /ext 文件夹中,并在您的 php.ini

中将其作为扩展引用

'*' 用于 PHP 版本,一切都在 MSDN 文档 here

谢谢