ホームページ  >  記事  >  バックエンド開発  >  PHP を使用して Oracle データベースに接続するときに発生する未定義関数エラー oci_connect() を解決する方法

PHP を使用して Oracle データベースに接続するときに発生する未定義関数エラー oci_connect() を解決する方法

DDD
DDDオリジナル
2024-10-21 08:42:02764ブラウズ

How to Resolve Undefined Function Error oci_connect() When Connecting to Oracle Database with PHP?

問題: oci_connect() での未定義関数エラー

Oracle データベースへの PHP 接続を確立しようとすると、開発者は次のような問題に遭遇する可能性があります。エラー:

Fatal error: Call to undefined function oci_connect()

解決策:

この問題は通常、PHP Oracle 拡張機能 (OCI8) が適切にインストールまたは構成されていない場合に発生します。この問題を解決するには、次の手順に従います。

  1. OCI 拡張機能がインストールされていることを確認します。

    • Windows ユーザーの場合は、php_oci8 .dll または php_oci8_11g.dll 拡張ファイルは、PHP ext ディレクトリ (C:xamppphpext など) に存在します。
    • Linux/Mac ユーザーの場合は、OCI8 PECL パッケージをインストールする必要があります。
  2. OCI 拡張機能を有効にする:

    • php.ini ファイルで、次の行のコメントを解除して有効にします:

      • extension=php_oci8.dll (Windows)
      • extension=oci8.so (Linux/Mac)
  3. Oracle Instant Client の構成:

    • 適切なバージョンの Oracle Instant Client をダウンロードしてインストールします (11g 以降を推奨)。
    • OCI_INCLUDE_DIR という名前の新しい環境変数を作成し、これをインスタント・クライアントのインクルード・ディレクトリ(例: C:oracleinstantclient_11_2sdkinclude)に設定します。
    • OCI_LIBRARY_DIRという名前の別の環境変数を作成し、それをインスタント・クライアントのライブラリ・ディレクトリ(例: C:oracleinstantclient_11_2sdklib)に指定します。
  4. Apache サーバーの再起動:

    • 拡張機能と Oracle Instant Client を構成したら、Apache サーバーを再起動して変更を適用します。
  5. OCI8 サポートの確認:

    • PHP コードで phpinfo() を使用して、OCI8 拡張機能がロードされ、正しくロードされていることを確認します。
  6. **注:

    • Windows 64 ビット システムでは、32 ビットのインストールが必要な場合があります。 Oracle Instant Client のバージョン。環境変数が 32 ビット バージョンに応じて設定されていることを確認してください。

以上がPHP を使用して Oracle データベースに接続するときに発生する未定義関数エラー oci_connect() を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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