0

「File1.txt」という名前のファイルを「שלוםhello」という内容で保存しました。そのエンコードはUnicodeです。「readfile」を実行してヘッダーを送信すると、次のようになります。

Content-type: text/plain;charset=utf-8

ヘブライ文字が消えます。奇妙な部分は、ファイルをもう一度開くと、ヘブライ語の文字(Unicodeはヘブライ語をサポート)が表示され、UTF-8はUnicodeを拡張するため、理論的には変換を行う必要がないことです。私は何をすべきか?

4

1 に答える 1

3

「そのエンコーディング[ing]はUnicodeです」という行は意味がありません。テキスト ファイルで Unicode を表現する方法は多数あります (UTF-8 はその 1 つです)。

つまり、メモ帳に Unicode として保存されたということは、ファイルが UTF-16LE であることを意味します。それぞれのヘッダーを送信します。

Content-type: text/plain;charset=utf-16

そしてそれはうまくいくでしょう。

タイトルの質問に答えるために、通常、このiconv()関数は PHP でエンコーディング間の変換に使用されます。ただし、ホスト環境の Web サーバーでは使用できない場合があることに注意してください。

于 2013-02-24T19:23:24.957 に答える