在 php 7.2 中启用 pdo_sqlsrv,不起作用

Posted

技术标签:

【中文标题】在 php 7.2 中启用 pdo_sqlsrv,不起作用【英文标题】:enable pdo_sqlsrv in php 7.2, not working 【发布时间】:2019-05-15 11:01:16 【问题描述】:

我已经遵循了所有的引导路径,

    从https://github.com/Microsoft/msphpsql/releases下载适用于php 7.2的sql驱动 将 ts 文件复制并粘贴到我的 xampp/php/ext 文件夹中, 从 php.ini 文件启用扩展 重新启动 xampp 并检查 php 信息 但我看不到在 phpinfo 中启用的扩展

我需要知道,是版本问题还是我遗漏了什么。

【问题讨论】:

【参考方案1】:
    您需要以管理员身份运行。 缺少 ODBC 驱动程序。

【讨论】:

ODBC 驱动程序已经存在,如图所示,我需要以管理员身份运行哪些东西? 作为管理员!运行 wampserver【参考方案2】:

可以按照以下步骤安装 SQL Server 的 PHP 驱动程序:

在Microsoft PHP Drivers for SQL Server Support Matrix之后选择并下载此驱动程序的适当版本。 按照System Requirements for the Microsoft Drivers for PHP for SQL Server 下载并安装适当的 ODBC 驱动程序 load SQL Server 的 PHP 驱动程序作为 PHP 扩展。 重启 Apache

例子:

<?php
# Info
$server   = 'server\instance,port';
$database = 'database';
$username = 'username';
$password = 'password';

# Connect
try 
    $conn = new PDO("sqlsrv:server=$server;Database=$database", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 catch(PDOException $e) 
    die("Error connecting to SQL Server".$e->getMessage());


# End
echo 'Connected';
$conn = null;
?>

【讨论】:

以上是关于在 php 7.2 中启用 pdo_sqlsrv,不起作用的主要内容,如果未能解决你的问题,请参考以下文章

在 Ubuntu 18.04 中对 PHP 7.2 启用 GD 支持

如何在 openSUSE 飞跃 15 上安装 pdo_sqlsrv php 扩展

启用 Mcrypt 的 PHP 7.2 上的 Laravel 4.2 仍然显示“需要 Mcrypt PHP 扩展”。在浏览器上

使用 pdo_sqlsrv 执行存储过程

未在 Aws Ec2 实例上为 PHP 7.2 执行 PHP 代码

如何在我的 windows 2008 Server 2008 R2 上安装 pdo_sqlsrv? [关闭]