web-dev-qa-db-ja.com

PHP 5.6 for WAMPサーバーのSqlsrv

この問題に関する非常に多くの投稿を見た後、私はそれが機能するはずなのでなぜ機能しないのか理解できません。これまでのすべての情報を投稿します。

MicrosoftからSQLSRV32.exeをダウンロードしました。 dllファイルをC:\ wamp\bin\php\php5.6.16\extに抽出しました。

Wampserverから提供されたphp.iniで:

  • extension_dir = "c:/wamp/bin/php/php5.6.16/ext/"

  • extension = php_sqlsrv_56_ts.dll

  • extension = php_pdo_sqlsrv_56_ts.dll

Php5.6.16フォルダーにphp5ts.dllがあるので、スレッドセーフであると思うので、ts.dllを使用しています。

Phpinfo()を使用している場合、「sqlsrv」セクションが表示されるはずですが、表示されないので、ここで何か間違ったことをしたと思いますか?

Wampserverで何度も再起動し、管理者として実行しました。それでもphpinfo()には表示されません...しかし、Wampserverのphp拡張機能でこれを見ることができます: Extension showed up here

私が間違ったことのアイデアや、phpinfo()に表示されない理由は何ですか?

14
Danishdjinn

私は問題が何であるかを見つけました。

Microsoft 32ビットsqlsrvドライバーを使用していたようですが、wampserver 3 64ビットでは動作しません。

PHP用の公式Microsoft SQL Serverドライバー: ここ 32ビット-32ビットのwampserverがある場合はこれを使用します。

PHP用の非公式のMicrosoft SQL Serverドライバー: ここ 64ビット-64ビットサーバーがある場合はこれを使用します。

非公式バージョンを使用した後、phpinfo()に表示されました!

とにかく、この答えが何時間もかけて答えを探し回っている人々に役立つことを望んでいます...

27
Danishdjinn