データベースはOracleを使用しています。PHPがOracleに接続する際、文字セットを指定すると中国語の文字化けが発生します。
PHP マニュアルを確認してください。oci_pconnect の 4 番目のパラメーターは charset です。このパラメーターを設定するだけです。
まず、Oracle の文字セットを取得し、「SELECT * FROM V$NLS_PARAMETERS;」を実行します。変数 NLS_CHARACTERSET は、必要な文字セットに対応します。たとえば、ここでは「AL32UTF8」です。したがって、最終的な PHP コードは次のようになります。
$conn = oci_pconnect('scott','tiger', "(DEscriptION=(ADDRESS=(PROTOCOL =TCP)(HOST=192.168.0.1)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME=jocsbk)))", 'AL32UTF8');
ローカルの PHP ファイルは utf-8 を使用するため、直接出力するのが通常です。トランスコーディングは必要ありません。
さらに、関連情報によると、ローカルファイルがOracleへの接続に使用される文字セットと異なる場合、エンコード変換を実行する必要があります。
rreee別の解決策もありますが、私は試していません。 Oracle は、クライアントが指定した文字セットに従ってデータを提供できます。つまり、ローカルの PHP ファイルが UTF-8 を使用している場合、oci_connect を使用するときに utf-8 を直接指定でき、エンコード変換も保存されます。
りー