Can';t从PHP连接到SQL Server 2008

Can';t从PHP连接到SQL Server 2008,php,sqlsrv,Php,Sqlsrv,我有使用mysql数据库的经验,并通过几十个项目成功地连接到它们 现在,我无法连接到SQL Server 2008。这是有效的:,sqlsrv和pdo_sqlsrv部分出现在此页面上。下面是我用来连接的代码: <?php $serverName = "serverName\sqlexpress"; //serverName\instanceName $connectionInfo = array( "Database"=>"dbName", "UID"=>"userName",

我有使用mysql数据库的经验,并通过几十个项目成功地连接到它们

现在,我无法连接到SQL Server 2008。这是有效的:
,sqlsrv和pdo_sqlsrv部分出现在此页面上。下面是我用来连接的代码:

<?php
$serverName = "serverName\sqlexpress"; //serverName\instanceName
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn ) {
     echo "Connection established.<br />";
}else{
     echo "Connection could not be established.<br />";
     die( print_r( sqlsrv_errors(), true));
}
?>

此代码直接来自php.net,如下所示:。我所做的唯一更改是用#######替换serverName\sqlexpress。和更改:dbName、用户名、密码

以下是我运行上述连接代码时的结果:

分析错误:语法错误,第23行C:\inetpub\quote.myWebsite.com\index.php中出现意外的“$serverName”(T_变量)

即使我做了这样简单的事情:

<?php $myVariable = "someString"; ?>

我得到了相同类型的解析错误:

分析错误:语法错误,第23行的C:\inetpub\quote.myWebsite.com\index.php中出现意外的“$myVariable”(T_变量)


为什么我在PHP代码中收到错误?

您有一个字符串转义错误。打开此文件并搜索字符串“转义字符”(不带引号)。但转义序列\s不存在


将此行改为:
$serverName=“serverName\sqlexpress”到此:
$serverName=“serverName\\sqlexpress”。仔细看,我刚刚将反斜杠加倍(\\)。

这与sql server无关,纯粹是PHP语法错误。此代码中没有
23行,您如何使用它?另外,该链接似乎包含一个端口号
$serverName=“serverName\sqlexpress,1542”//您没有的serverName
。index.php文件的第23行是什么?我发现了我的错误。第一行(我删除了它,因为它有我的用户名和密码)看起来像这样: