我是PHP新手。 PHP已安装并正在运行,现在我正尝试设置与SQL Server数据库的连接。遵循Youtube视频的指示。通过并完成安装驱动程序,但它不起作用。调用sqlsrv_connect()函数后,我的测试页停止运行代码。我甚至没有收到错误信息。下面是我的测试页面代码:在PHP中安装SQL Server驱动程序
<?php
echo '<br><span style="font-weight:bold;">PHP functioning. This line is being echoed out.</span><br />';
/*No problems yet...*/
$serverName = "Myserver";
$connectionInfo = array('Database'=>'nde', 'UID'=>'sa', 'PWD'=>'!hegEcu&3ATr');
$conn = sqlsrv_connect($serverName, $connectionInfo);
/*Nothing is appearing on the screen after this */
echo 'Still working...<br />';
if ($conn) {
echo 'Connection established.<br />';
} else {
echo 'Nope.<br />';
die(print_r(sqlserv_errors(), TRUE));
}
?>
我运行PHP 7.0.21和SQL Server 2014年我去了,下载了两个DLL文件我想我需要 - php_pdo_sqlsrv_7_ts_x64.dll和php_sqlsrv_7_ts_x64.dll。我将它们复制到Program Files/PHP/v7.0/ext。我以管理员身份进入PHP.ini,并在Windows扩展部分输入: extension = php_pdo_sqlsrv_7_ts_x64.dll
extension = php_sqlsrv_7_ts_x64.dll
。我保存了PHP.ini,重新启动了IIS管理服务和万维网发布服务,然后进入IIS管理器并重新启动服务器。 PHP仍在工作,但在sqlsrv_connect()调用之后,我仍然没有收到任何回显。
使用nts版本的DLL。此外,由于您已安装PDO扩展,请使用PDO而不是'sqlsrv_connect' – ctwheels
[如何获取PHP错误以显示?](https://stackoverflow.com/questions/1053424/how-do-i-get- PHP-错误到显示器)。但是PHP扩展并不是一个独立的解决方案,你仍然需要微软的适当驱动。 –
为什么使用非线程安全版本?为什么使用PHP数据对象而不是sqlsrv_connect()? – Cmaso