少し前に、qiushuiwuhen さんの gbk、unicode、big5 の変換に関する記事を見ました
しかし、いくつかの小さな問題がありました
そこで、文字変換を担当するクラスを設計し、いくつかの欠点を修正し、いくつかの関数を追加しました。将来的には、より多くの文字セットをサポートするためにこのクラスを拡張し続ける予定です
次の点が追加されました:
Unicode->gt;gbk 記号部分の変換
ユーロ記号 (€) の認識
big5、Unicode、および GBK 相互間変換では、共通文字セット部分のみが変換されることが前提となります。
使用説明:
一時プログラムは、次の文字エンコード方式をサポートします:
GBK、BIG5、UTF-16BE (Unicode ビッグエンディアン バイト オーダー)、UTF- 16LE (Unicode リトルエンディアン バイト オーダー)、UTF-8
デフォルトの入力エンコード方式は GBK で、デフォルトの出力エンコード方式は UTF-16BE です。
このカテゴリには、入力および出力エンコード方式を変更するための 2 つの関数が提供されます:
Modify入力エンコーディング メソッド boolean SetGetEncoding(string $GetEncoding)
出力エンコーディング メソッド boolean SetToEncoding(string $ToEncoding) を変更します。 関数パラメータでは、大文字と小文字が区別される上記 5 つのエンコーディング メソッドのみを使用できます。たとえば、GBK は記述できません。 as gbk
設定が成功した場合は true を返し、使用した場合は true を返します。 間違ったエンコーディング名を使用した場合は false を返し、エラー メッセージを表示します
関数
string EncodeString (string $String)
文字エンコーディングの変換を担当し、変換された文字列を返します
使用する前に、var $FilePath="" を変数 プログラム ファイルの絶対パスに変更してください。そうしないと、データ ファイルが見つかりません
例:
gbk エンコードされた文字列を UTF-8 エンコードに変換します:
$s="GBK エンコード";
$CharEncoding=new Encoding();
$CharEncoding->SetGetEncoding("GBK")||die("エンコーディング名が間違っています");
$CharEncoding->SetToEncoding("UTF-8")| |die("エンコーディング名が間違っています");
echo $CharEncoding->EncodeString($s);
ブラウザで表示するには UTF-8 エンコーディングを使用すると、正しい文字が表示されます
プログラムのダウンロード アドレス:
http ://dreamcity2000.myetang.com/encoding.zip
ダウンロードするときは、ブラウザウィンドウを再度開き、上記のアドレスを入力してダウンロードしてください
追記:プログラムを転載したい場合は、作者に連絡してください