[英]PHP8 + Oracle OCI8 => Fatal error: Uncaught Error: Call to undefined function oci_connect()
[英]Oracle OCI8 PHP Debian Encoding error
我對使用帶有Instantclient 12.2,php 5.6和oci8(2.0.12)的debian 8服務器的編碼感到失望。
我在php網站本身中存在編碼問題,可以ISO-8859-1
在php.ini
中將php編碼設置為ISO-8859-1
來解決。 ->因此,編碼(包括所有歐洲字符)都適用於php。
現在我的問題是,我從oracle12c數據庫檢索的數據編碼不正確。 所以我得到
a for ä
o for ö
u for ü
? for ß
從php保存到數據庫時,會發生同樣的事情。
在sqlplus64客戶端中,數據已正確編碼,所以我想它與oci8有關。
我試過的
我已經將NLS_LANG
參數設置為GERMAN_GERMANY.WE8ISO8859P1
和GERMAN_GERMANY.UTF-8
,嘗試手動給oci_connect()
一個字符集,嘗試了apache2.conf
和php.ini
所有編碼選項,試圖覆蓋通過.htaccess
文件最終加載的配置和東西。 但是,這些都不起作用。
也許有人知道出路?
我解決了
putenv("NLS_LANG=GERMAN_GERMANY.WE8ISO8859P1");
在oci_connect()
之前
我完全不知道為什么這行得通,但是我想apache無法訪問我通過/etc/profile
文件設置的參數
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.