ホームページ  >  記事  >  バックエンド開発  >  PHP 5.6.11 SQL Server2008R2_php の例にアクセスするいくつかの状況の詳細な説明

PHP 5.6.11 SQL Server2008R2_php の例にアクセスするいくつかの状況の詳細な説明

WBOY
WBOYオリジナル
2016-08-17 13:02:321298ブラウズ

PHP は当然 MySQL をサポートしていますが、場合によっては SQL Server にアクセスしたい場合があります。

私は最近いくつかの情報を見つけ、SQLSvr にアクセスする PHP のいくつかの状況を正常にテストしました。テストされたレコードは次のとおりです。

テスト環境: win7 x64 sp1、IIS 7.5、Apache 2.4 32ビット版、PHP 5.2.6 win32、PHP 5.6.11 win32 ts (スレッドセーフ版)


注: 「Microsoft Drivers for PHP for SQL Server」ドライバーには現在 32 ビット バージョンしかないため、SQL サーバー データベースを使用している場合は、php 64 ビットを使用することはお勧めできません。そうしないと、 SQLサーバーデータベースに接続できない問題!

php 5.2.6はiis上のsql2000に正常にアクセスしました


php 5.2.6 は iis 上の sql2008r2 に正常にアクセスしました


php 5.6.11はApache上のsql2008r2に正常にアクセスしました


【5.2.6 -> SQL2000】


なぜテストに古い php バージョン 5.2.6 を使用する必要があるのでしょうか? php 5.2 バージョンには php_mssql.dll モジュールが組み込まれているためです。


php.ini で extension=php_mssql.dll 構成オプションを開きます。これはデフォルトで mssql2000 をサポートしているようです。


phpinfo を開くと、関連するサポート モジュールのコンテンツが表示されます:


PS.IIS 7.0 で PHP をインストールするのが便利になりました。サードパーティのガジェット PHP マネージャーを使用してインストールでき、iis で PHP バージョンを簡単に切り替えることもできます。これはこの記事の主要な内容ではありません。ここでは紹介しません


iis 7 用の php マネージャーのダウンロードとインストールのアドレス: http://phpmanager.codeplex.com/


小さなテストルーチンを作成します:

リーリー

IIS 7.5 で実行した結果は次のとおりです: 成功!


【5.6.11 -> SQL2008R2】


PHP 5.6 以降には php_mssql.dll が含まれておらず、SQL Server バージョン 2000 以降をネイティブにサポートしていないようです。これは Microsoft 公式 Web サイトで見つけました。

SQL Server 用 PHP 用 Microsoft ドライバー

http://www.microsoft.com/en-us/download/details.aspx?id=20098

ダウンロード リンク アドレスには 4 つのファイルがあります:

•SQLSRV30.EXE

•SQLSRV31.EXE

•SQLSRV32.EXE

•SQLSRV40.EXE


異なるPHPバージョンをそれぞれサポート

•バージョン 4.0 は PHP 7.0 以降をサポートします

•バージョン 3.2 は PHP 5.6、5.5、5.4 をサポートします

•バージョン 3.1 は PHP 5.5 および 5.4 をサポートします

•バージョン 3.0 は PHP 5.4 をサポートします。


PHP 5.2 用の SQLSRV20.EXE をダウンロードしたい場合は、このファイルはオンラインで簡単に見つかります。

(5.2 などの古いバージョンはずっと前に削除されているはずですが、特定の環境ではまだ使用する必要があることを考慮すると)


php_pdo_sqlsrv_52_ts_vc6.dll


php_sqlsrv_52_ts_vc6.dll



1. PHP 5.6.11 win32 ts を持っています。これを使用する必要があります

php_sqlsrv_56_ts.dll

php_pdo_sqlsrv_56_ts.dll

これら 2 つのファイルを phpext ディレクトリにコピーします

2. 次の 2 つの文を php.ini に追加します。


拡張子=C:PHP5extphp_sqlsrv_56_ts.dll

拡張機能=C:PHP5extphp_pdo_sqlsrv_56_ts.dll


3. IIS または Apache を再起動します。


4. phpinfo を通じて次のモジュールが表示されます。この時点で、PHP は SQL Server 2008R2 にアクセスできるはずです。



5. 検証するための小さなプログラムを作成します。

リーリー

次のプロンプトが表示された場合:

Microsoft® ODBC Driver 11 for SQL Server® - Windows のインストールが必要になる場合もあります

ダウンロードアドレス: https://www.microsoft.com/zh-cn/download/details.aspx?id=36434

それが正しければ、問題ないはずです:

追記: 新しいモジュールは PDO 経由で SQL Server 2008R2 にアクセスするため、ローカルでアクセスする場合は、IP アドレスと sa アカウントを介して直接アクセスできます。

php と sql2008r2 が異なるコンピューター上にある場合は、アクセス用に TCP ポート 1433 を設定する必要があります。下の 2 番目の図を参照して、動的ポートを 0 に変更し、ポートを 14333 に設定します。SQL2000 がすでに 1433 を使用している場合は、アクセス アドレスに従います。 xxxx ポート番号を追加します


sqlsrv:サーバー=192.168.1.xxxsql2008r2,14333;データベース=マスター



上記は、編集者が紹介した、PHP 5.6.11 での SQL Server2008R2 へのアクセスに関するいくつかの状況の詳細な説明です。ご質問があれば、メッセージを残していただければ編集者が返信いたします。間に合ったあなた。スクリプト ハウス Web サイトをサポートしてくださった皆様にも感謝いたします。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。