PHP从Linux和Windows连接到MSSQL

时间:2013-08-16 12:45:03

标签: php sql-server linux windows

我使用linux构建服务器(http://circleci.com)进行自动构建和测试;但是我需要连接到MSSQL服务器。我可以在windows上开发并使用MS php SQLSVR驱动程序连接,但我无法在Linux构建服务器上连接,因为驱动程序只是Windows。

我的问题是:有没有一种方法通过php连接到MSSQL服务器的Windows和Linux?试过odbc,但是你需要linux上的bdlib和FreeTDS - 这将构成代码更改,因此意味着测试不是100%,例如在Windows环境中它将使用odbc:{SQL Server}而在linux上它将是{{1} }

检查看看正在使用的系统然后选择相应的数据库连接字符串似乎是不对的。

我使用的是PHP 5.5.1

1 个答案:

答案 0 :(得分:0)

不,没有一种方法,但做这样的事情是微不足道的:

if ('Linux' === PHP_OS){
    $pdo = new PDO("dblib:dbname=$database_name;host=$database_server", $username, $password);
}else{
    // $pdo = whatever you're using on your Windows box now.
}

您还需要在Linux服务器上设置odbc.ini,odbcinst.ini和freetds.conf文件。