1

我正在尝试使用 MS SQL Server 1.0 版的 PHP 驱动程序。

我已经完成了所有设置,但我认为我无法加载扩展php_sqlsrv_ts.dll。我已经转到命令行并尝试以下操作:

C:\wamp\bin\php\php5.3.0>php.exe --re sqlsrv
Exception: Extension sqlsrv does not exist

C:\wamp\bin\php\php5.3.0>php.exe --re sqlsrv_ts
Exception: Extension sqlsrv_ts does not exist

在我的 PHP.ini 中 - 我有:

;extension=php_sqlsrv.dll
extension=php_sqlsrv_ts.dll

为我启用了线程安全,因此使用php_sqlsrv_ts.dll。我的 extension_dir 是正确的,因为我从那里加载了其他模块。我也有 Microsoft Native CLient 2008。每次我尝试运行我的 PHP 脚本时,我都会得到:

Fatal error: Call to undefined function sqlsrv_connect()

它必须与未加载的模块有关。我可以获取 MySQL 的所有扩展信息,但不能获取 sqlsrv 扩展。

我怎样才能让 PHP 加载这个扩展?

谢谢大家

编辑

Apache_Error_log:

PHP Warning:  PHP Startup: sqlsrv: Unable to initialize module\nModule compiled with module API=20060613\nPHP    compiled with module API=20090626\nThese options need to match\n in Unknown on line 0
PHP Warning:  Module 'xmlrpc' already loaded in Unknown on line 0
[Tue Oct 13 14:51:16 2009] [notice] Apache/2.2.11 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Tue Oct 13 14:51:16 2009] [notice] Server built: Dec 10 2008 00:10:06
[Tue Oct 13 14:51:16 2009] [notice] Parent: Created child process 11916
PHP Warning:  PHP Startup: sqlsrv: Unable to initialize module\nModule compiled with module API=20060613\nPHP    compiled with module API=20090626\nThese options need to match\n in Unknown on line 0
<br />
<b>Warning</b>:  PHP Startup: sqlsrv: Unable to initialize module
Module compiled with module API=20060613
PHP    compiled with module API=20090626
These options need to match
 in <b>Unknown</b> on line <b>0</b><br />
PHP Warning:  Module 'xmlrpc' already loaded in Unknown on line 0
<br />
<b>Warning</b>:  Module 'xmlrpc' already loaded in <b>Unknown</b> on line <b>0</b><br />
4

1 回答 1

3

那是版本不匹配。该模块是为比用于 mod_php 的更早版本的 PHP 编译的。您将需要使用服务器上的版本编译模块。

于 2009-10-13T13:56:09.763 回答