いくつかの設定ミスと解決策を探している間に3日が失われたため、Linuxサーバーで開発するために移動しましたが、すべての問題が解消されました。
私が見つけたもの:
- 両方の
php_oci8.dll
およびphp_oci8_11g.dll
OracleInstantClientライブラリに依存しています- これらのライブラリには
oci_
が含まれていません 関数(oci_connect
など )、ociX
のみ 関数(ociLogon
など )これは奇妙です...
- これらのライブラリには
- OracleInstantClientをダウンロードしたことは間違いありませんが基本 すべての拡張機能で、文字セットが不明なために別のOracleサーバーに接続できず、エラーは Liteのみを使用していることを示していました。 インスタントクライアント...
- 64ビットと32ビットの両方のインスタントクライアントバージョンを無駄に試しました
- 私のApacheは64ビット、Windowsは64ビット、PHPは32ビット、リモートOracleサーバーは64ビット、リモートLinuxサーバーは64ビットです...
- 多くの環境設定を試しました(
ORA_HOME
、TNS_ADMIN
、調整されたPATH
インスタントクライアントのインストールを検討するため)無駄に - 環境設定の干渉の可能性があるため、ローカルのOracleXEサーバーをアンインストールしようとしました
- ほとんど頭を失った-無駄に...
最後に、Linuxサーバーでは、リモートのOracleサーバーに接続するのに問題はありません。どこかで(何千ものPHP-Oracle関連のページを閲覧しているときに)「WindowsでOracleサーバーに接続するPHPアプリケーションを開発するべきではなく」、代わりにUNIXシステムに固執するべきであるという情報を見つけました...
だから誰でも 同様または同じ問題が発生している-親切にして時間を無駄にしないでください。VirtualBoxをインストールし、Linuxを実行して、先に進んでください。