哪些.so文件可以用于Linux系统与Windows中的.dll文件相对应,以连接PHP到MS SQL Server?

7
我曾在Windows系统中使用php5ts.dll文件来连接PHP和MS SQL Server,但我现在需要在Linux上做同样的事情。然而,这些相同的dll文件在Linux上不起作用,因为它们是为Windows设计的。通过调查,我了解到,在Linux上,与Windows中的dll文件对应的是.so文件 SO question
我不知道这些.dll文件在PHP中确切地是用来做什么以连接到MS SQL Server。
如果有人能帮助我理解为什么在Linux上无法使用相同的方法,并提供解决方案,那将会很棒。
我还看到一个类似的问题here ,但是针对的是Windows系统而不是Linux。
以下是我们用于创建连接的代码片段:
  • db.driver = "pdo_sqlsrv"
  • db.host = ""
  • db.dbname = ""
  • db.user = ""
  • db.password = ""

驱动程序文件放置在此处:D:\wamp\bin\php\php5.4.16 >>php5ts.dllD:\wamp\bin\php\php5.4.16\ext >> php_sqlsrv_54_ts.dll


1
没有.dll文件可以在Linux上工作。您是想将Windows Apache/PHP安装复制到Linux系统吗? - RiggsFolly
1
这可能会帮助你入门:http://pointbeing.net/weblog/2010/05/successful-microsoft-sql-server-support-for-php-on-linux.html - RiggsFolly
是的。我想在Linux上配置我的项目。我的项目使用MS SQL Server作为数据库和PHP作为服务器脚本语言。 - Always_a_learner
1
第一个问题:你如何在Windows(代码中)连接SQL数据库? 第二个问题:在Linux上,您是否使用不同的服务器和数据库驱动程序? - hurricane
1
"PDO_SQLSRV扩展仅与在Windows上运行的PHP兼容。对于Linux,请参见ODBC和» Microsoft的SQL Server ODBC Driver for Linux.因此,看起来您不能在两个平台上都使用所选的驱动程序。我猜你应该使用像FreeTDS或PDO_ODBC这样的东西,但我没有从unix PHP安装连接到SQL Server的任何经验。" - Matt Gibson
显示剩余2条评论
1个回答

0

在Linux机器上使用php5连接到Microsoft SQL有一点不直观,你实际上需要使用sybase扩展和pear MDB2驱动程序来连接MS SQL。如果由于操作系统限制而无法安装MSSQL扩展,PHP5中的MSSQL函数实际上是将Sybase函数作为别名。

要解决这个问题,请使用以下命令...

sudo apt-get install php5-sybase
pear install --nodeps MDB2_Driver_mssql

在完成这个步骤后,您可以使用以下方式进行测试...

<?php

$server = 'servername';
$username = 'sa';
$password = 'password';
$database = 'xxx';
$connection = mssql_connect($server, $username, $password);

if($connection != FALSE)
{
echo "Connected to the database server OK<br />";
}
else
{
die("Couldn't connect");
}

if(mssql_select_db($database, $connection))
{
echo "Selected $database ok<br />";
}
else
{
die('Failed to select DB');
}

$query_result = mssql_query('SELECT @@VERSION');
$row = mssql_fetch_array($query_result);

if($row != FALSE)
{
echo "Version is {$row[0]}<br />";
}
mssql_free_result($query_result);
mssql_close($connection);

我需要安装哪些软件来执行上述命令:sudo apt-get install php5-sybase,pear install --nodeps MDB2_Driver_mssql。 - Always_a_learner
你在Linux机器上成功配置了PHP和MS SQL之间的连接吗? - Always_a_learner

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接