与ubuntu的Mssql_connect php7.1

我正在使用Windows 10和SQL Server为我的网站(我使用codeigniter),在这里是我的设置窗口

$db['default'] = array( 'dsn' => '', 'hostname' => '----', 'username' => '--', 'password' => '-----', 'database' => '-----', 'dbdriver' => 'sqlsrv', 'dbprefix' => '', 'pconnect' => FALSE, 'db_debug' => (ENVIRONMENT !== 'production'), 'cache_on' => FALSE, 'cachedir' => '', 'char_set' => 'utf8', 'dbcollat' => 'utf8_general_ci', 'swap_pre' => '', 'encrypt' => FALSE, 'compress' => FALSE, 'stricton' => FALSE, 'failover' => array(), 'save_queries' => TRUE ); 

但现在,我想从本地上传我的网站到我的服务器。 我的服务器使用Ubuntu

 Distributor ID: Ubuntu Description: Ubuntu 14.04.4 LTS Release: 14.04 Codename: trusty 

当我上传我的codeigniter我得到这个错误

 Message: Call to undefined function sqlsrv_connect() 

我的PHP版本

 PHP Version 7.1.10-1+ubuntu14.04.1+deb.sury.org+1 

我如何解决它? 多谢了。 我正在使用Ubuntu而不是Windows

按照微软的教程,步骤是:

1.安装ODBC驱动程序

 curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-tools.list sudo apt-get update sudo ACCEPT_EULA=Y apt-get install mssql-tools sudo apt-get install unixodbc-dev echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc 

2.获取PHP Sql server扩展

 sudo pecl install sqlsrv pdo_sqlsrv sudo echo "extension= pdo_sqlsrv.so" >> `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"` sudo echo "extension= sqlsrv.so" >> `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"` 

这里是完整的教程(包括安装数据库服务器本身):

教程

我认为'SQLSRV'将把DLL整合到Windows的Windows版本中。

如果要在Linux上连接到SQL server,请安装UnixODBC和FreeTDS并与PDO连接。 其实,我正在使用Code Igniter和SQL server。

你要做的是确保你有适合PHP的SQL server驱动程序。 微软在github上有一个驱动程序:

用于SQL server的Microsoft PHP驱动程序

我相信他们有建立Ubuntu 16.04的指示。 我注意到你提到你有Ubuntu 14.04.4 – 我没有尝试过,但它可能工作。

我确实有成功,但与Ubuntu 14.04几年前,使用本网站上的说明: RobsPHP,但这是PHP 5.6

在您的研究中另一个可能有用的链接: SQLSrv安装(php.net)