在将一个Web应用程序移植到使用PHP7的服务器时,我遇到了一个问题:我无法让mssql_connect正常工作。我发现mssql在PHP7上尚未工作(或永远不会工作)。
在Ubuntu(Nginx,php-fpm)上,连接到MSSQL的最快方法是什么?
mssql_connect()
了。自从php 5.3版本以来,它已经被弃用了。现在在php 7中,这个旧函数消失了。但是不用担心 ;) 现在你可以使用sqlsrv_connect()
函数代替它。<?php
$serverName = "serverName\sqlexpress, 1542"; //serverName\instanceName, portNumber (1433 by default)
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Successfuly connected.<br />";
}else{
echo "Connection error.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>
sqlsrv_connect
?而不是 pdo
或 mysqli
? - Michalsqlsrv
才能正常工作,那么为什么不直接使用FreeTDS ODBC呢? - NiKiZe1. 运行sudo apt-get update安装php-sybase
2.
$dsn= 'dblib:host=youIP:1433;dbname=XXX;';
$dbusername="sa";
$dbpassword="XXXX";
try
{
$mspdo = new PDO($dsn,$dbusername,$dbpassword);
$mspdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $pe)
{
die("database connect error:". $pe->getMessage());
}
PDO::__construct()
sqlsrv_connect()
odbc_connect()
。 - Ferrybig