Я прочитал лот из сообщений здесь по этой проблеме, но я думаю, что мой немного отличается, потому чтоВывод, который я получаю, не соответствует тому, что было у других.
Я использую 64-битную версию WampServer версии 3.1.4 и пытаюсь подключиться к БД SQL Server, и я получаю следующую ошибку:
Fatal error: Uncaught Error: Call to undefined function sqlsrv_connect()
с использованием следующего кода:
$serverName = "xxx.xxx.xxx.xxx";
$connectionInfo = array("Database" => "db_name", "UID"=>"sa", "PWD"=>"db_pwd");
$conn = sqlsrv_connect($serverName, $connectionInfo);
Я попробовал следующее:
- Я скачал драйверы sql для PHP 7 и 7.1 и попробовал их с соответствующим PHPверсии
- После обновления файла php.ini я перезапустил все службы.
- В моей версии WAMP файл php.ini в папке Apache - это всего лишь ярлык для
phpForApache.ini
в папке php7.1.22
, и она обновляется автоматически. - Расширения действительно отображаются в меню WAMP:
PHP > PHP extensions
, и рядом с ними стоит зеленая галочка
В моем файле php_error.log последовательно появляется следующее:
[27-Nov-2018 14:25:16 UTC] PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp64/bin/php/php7.1.22/ext/php_sqlsrv_71_nts.dll' - %1 is not a valid Win32 application.
in Unknown on line 0
[27-Nov-2018 14:25:16 UTC] PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp64/bin/php/php7.1.22/ext/php_sqlsrv_71_ts.dll' - %1 is not a valid Win32 application.
in Unknown on line 0
Как уже говорилось, я попытался использовать соответствующие dll для php 7 и 7.1.22 и получил один и тот же вывод:
[27-Nov-2018 15:12:37 UTC] PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp64/bin/php/php7.0.32/ext/php_sqlsrv_7_ts_x86.dll' - %1 is not a valid Win32 application.
in Unknown on line 0
[27-Nov-2018 15:12:37 UTC] PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp64/bin/php/php7.0.32/ext/php_sqlsrv_7_nts_x86.dll' - %1 is not a valid Win32 application.
Я действительно не уверен, что другоеконфиг у меня должен отсутствовать.Я также попробовал версии x64, но я получаю сообщение об ошибке, указывающее, что файл не может быть найден, даже если я трижды проверил местоположение.
Видя, как я получаю одинаковую ошибку not a valid Win32 application
для обеих версий, я думаюэто что-то вне PHP