根据 PHP 手册 (www.php.net/manual/en/sqlsrv.requirements.php),sqlsrv 驱动程序是仅限 Windows 的驱动程序。因此,您不能在 Mac、Linux、Unix 或任何其他操作系统上使用该驱动程序,而不是该页面上列出的那些。
我假设您正在尝试连接到某个地方的远程 SQL Server?如果你在 Mac 上,那么 SQL Server 就不会在你的本地机器上运行,所以我想第一个问题是你是否有一个 SQL Server 在某个地方运行。
其次,从运行 PHP 的服务器,您需要使用 FreeTDS 或 ODBC 与 FreeTDS 进行连接。
由于 Laravel 4 使用 PDO,你需要安装 FreeTDS 和 ODBC。Laravel 4 不使用 mssql PHP 扩展。它使用 PDO,因此 mssql 不会让您使用 Laravel 4。
如果您从 Mac 提供 PHP,我想说通常有 4 种不同的方式可以使用:
简单但昂贵的方法:访问 (www.macupdate.com/app/mac/23152/openlink-odbc-driver-for-sybase) 并下载并安装 OpenLink ODBC 驱动程序。这允许您在 XNIX 机器上使用 Sybase (MSSQL) 驱动程序创建新的 ODBC 连接。这里有一个安装演练 (wikis.openlinksw.com/dataspace/owiki/wiki/UdaWikiWeb/InstallSybaseExpressOSX)。它带有 15 天的试用期,之后您必须购买它。在撰写本文时,它的成本似乎在 30 美元到 50 美元之间,具体取决于您选择的许可证。
更难但免费的方法:按照http://blog.benjaminwalters.net/?p=10(稍微过时)将 FreeTDS 支持重新编译到 Mac 上的 PHP 中(假设您使用的是 MAMP)
更好,但工作量更大的方法:找到像 VMWare Fusion 这样的虚拟机主机软件,并安装像 Ubuntu 12.4 这样的 Linux 服务器。确保在安装过程中安装 apache2 和 PHP,然后按照此处的步骤让 FreeTDS 在您的新服务器机器上运行。
从运行 SQL Server 的 Windows Server 运行 PHP
里程数会因每种解决方案而异,并且无论如何都有一个学习曲线。我从事 PHP 开发已经有很长时间了,我花了好几天的时间才弄清楚如何从 Linux 第一次连接到 SQL Server。值得庆幸的是,现在有很多演练,从那时起,FreeTDS 已经走了很长一段路。
希望有帮助。:)