Php 未捕获错误:调用XAMPP中未定义的函数sqlsrv_connect()

Php 未捕获错误:调用XAMPP中未定义的函数sqlsrv_connect(),php,sql-server,sqlsrv,Php,Sql Server,Sqlsrv,我正试图用PHP连接到SQL Server,但不幸的是,它无法自行调用该函数。我安装了驱动程序(DLL)以及来自此站点的驱动程序: 我收到以下信息: Fatal error: Uncaught Error: Call to undefined function sqlsrv_connect() in .... 我使用XAMPP和最新的PHP版本7.1.1运行本地服务器 更新: 我检查了扩展是否在PHP中加载: var_dump(extension_loaded ("php_sqlsrv_7_n

我正试图用PHP连接到SQL Server,但不幸的是,它无法自行调用该函数。我安装了驱动程序(DLL)以及来自此站点的驱动程序:

我收到以下信息:

Fatal error: Uncaught Error: Call to undefined function sqlsrv_connect() in ....
我使用XAMPP和最新的PHP版本7.1.1运行本地服务器

更新:

我检查了扩展是否在PHP中加载:

var_dump(extension_loaded ("php_sqlsrv_7_nts"));

但是它给了我一个
bool(false)
返回。

您必须首先安装MSSQL扩展并启用它们。这台机器不是开箱即用的。您的示例中有ODBC驱动程序,但是您的PHP版本需要在非线程安全模式下使用PHP扩展

找到正确的扩展有点复杂。否则,您可以尝试通过ODBC进行连接,但这会使一切变得更加复杂

试试这个:


您必须首先安装MSSQL扩展并启用它们。这台机器不是开箱即用的。您的示例中有ODBC驱动程序,但是您的PHP版本需要在非线程安全模式下使用PHP扩展

找到正确的扩展有点复杂。否则,您可以尝试通过ODBC进行连接,但这会使一切变得更加复杂

试试这个:


谢谢你的回答,但我已经回答了。我将其添加到ext文件夹并在php.ini文件中注册。您能检查扩展名是否已加载吗?PHP7.1可能有不同之处,但不起作用。请确保您使用的是非线程安全版本对不起,我的错误。谢谢您的回答,但我已经这样做了。我将其添加到ext文件夹并在php.ini文件中注册。您能检查扩展名是否已加载吗?PHP7.1可能有不同之处,但不起作用。请确保您使用的是非线程安全版本对不起,我的错误。您是否重置了服务器?您的意思是简单地重新启动?是的,我也这么做了。是的,这就是我的意思。。。。这将帮助您解决一个小问题:您是否使用SQLSRV4.0(从Microsoft网站下载)?如果是这样,@ImClarky是的,我下载了4.0版本。现在我也降级到了php 7.0版,但效果不太好。我不知道为什么会出现这个错误。你重置服务器了吗?你是说简单的重启吗?是的,我也这么做了。是的,这就是我的意思。。。。这将帮助您解决一个小问题:您是否使用SQLSRV4.0(从Microsoft网站下载)?如果是这样,@ImClarky是的,我下载了4.0版本。现在我也降级到了php 7.0版,但效果不太好。我不知道为什么会出现这个错误。