問題: oci_connect() 出現未定義函數錯誤
嘗試建立與Oracle 資料庫的PHP 連線時,開發人員可能會遇到以下情況錯誤:
Fatal error: Call to undefined function oci_connect()
解決方案:
當PHP Oracle 擴充(OCI8) 未正確安裝或設定時,通常會出現此問題。要解決此問題,請按照以下步驟操作:
-
確保已安裝OCI 擴充:
- 對於Windows 用戶,請確認php_oci8 .dll 或php_oci8_11g.dll 擴充檔案存在於您的PHP ext 目錄中(例如C:xamppphpext)。
- 對於 Linux/Mac 用戶,應安裝 OCI8 PECL 軟體套件。
-
啟用OCI 擴充:
-
在php.ini 檔案中,取消註解並啟用以下行:
- extension=php_oci8.dll (Windows)
- extension=oci8.so (Linux/Mac)
-
設定Oracle Instant Client:
- 下載並安裝適當版本的Oracle Instant Client(建議11g 或更高版本)。
- 建立一個名為 OCI_INCLUDE_DIR 的新環境變數並指向將其新增至 Instant Client 的包含目錄(例如 C:oracleinstantclient_11_2sdkinclude)。
- 建立另一個名為 OCI_LIBRARY_DIR 的環境變數並將其指向 Instant Client 的庫目錄(例如 C:oracleinstantclient_11_2sdklib)。
-
重新啟動Apache 伺服器:
- 設定擴充功能與Oracle Instant Client 後,重新啟動變更。
-
驗證OCI8 支援:
- 在您的PHP 程式碼中,使用時間phpinfo() 確認載入OCI8 擴充已載入OCI8 擴充且正確已配置。
-
**注意:
- Windows 64 位元系統可能需要安裝 32 位元Oracle Instant Client 的版本。確保為 32 位元版本設定對應的環境變數。
以上是使用 PHP 連接 Oracle 資料庫時如何解決未定義函數錯誤 oci_connect()?的詳細內容。更多資訊請關注PHP中文網其他相關文章!