検索
ホームページphp教程php手册PHP Web ページのエンコードの問題: 任意の文字セットで Web ページを正常に表示する方法

通常、Web ページ上で指定したエンコードでテキストを表示できるように、Web ページでは GB2312、UTF-8、ISO-8859-1 などのエンコード文字セットを指定する必要があります。しかし、この状況に遭遇する可能性は高くなります。つまり、ISO-8859-1 でエンコードされた Web ページに中国語の文字を表示したり、GB2312 でエンコードされた Web ページに韓国語の文字を表示したりする必要がある場合があります。もちろん、解決策の 1 つは、ISO-8859-1 や GB2312 エンコードを使用せず、UTF-8 エンコードを使用することです。これを使用する限り、さまざまな国の言語を混合して表示できます。これは現在多くの Web サイトで使用されている方法です。

ここで話しているのは上記の方法ではありません。なぜなら、上記の方法では文字セットを UTF-8 として指定する必要があるためです。ユーザーが手動で他の文字セットを指定した場合、または何らかの理由でその文字セットが指定されなくなるからです。この設定が機能せず、ブラウザが自動的に正しく認識しない場合、特にフレームで作成された一部の Web ページでは、表示される Web ページが文字化けします。フレーム内のページの文字セット設定が機能しない場合、表示されるWebページはまだ文字化けしていますが、Firefoxでは文字化けが表示され、変更できません(つまり、RightEncodeプラグインをインストールしないと)。

ここで紹介する方法は、Web ページが ISO-8859-1 文字セットに指定されている場合でも、中国語や日本語などを正しく表示できます。原理は非常に単純です。つまり、ISO-8859-1 エンコーディングの最初の 128 文字を除く他のすべてのエンコーディングは NCR (数値文字参照) で表されます。たとえば、「漢字」という 2 つの文字を「漢字」の形式で書くと、どの文字セットでも正しく表示できます。この原則に基づいて、既存の Web ページを任意の文字セットで表示できる Web ページに変換できる次のプログラムを作成しました。ソース Web ページの文字セットとソース Web ページを指定し、送信ボタンをクリックするだけで、ターゲット Web ページが取得されます。特定のテキストのみを変換することもできます。テキスト ボックスにテキストを入力し、そのテキストの元の文字セットを指定するだけで、エンコードされたテキストがページに表示されます。

ダウンロード: nochaoscode.php

function nochaoscode($encode, $str, $isemail = false) {
$str = iconv($encode, "UTF-16", $str);
for ($i = 0; $i $code = ord($str{$i) }) * 256 + ord($str{$i + 1});
else if ($code != 652) 79) {
$output .= "".$code.";"; > $encode = $_POST['encode'];
if ($encode == '') $encode = 'UTF-8';
if ($_FILES['file']['size'] > ; 0) {
$data = nochaoscode($encode, file_get_contents($_FILES['file']['tmp_name']));
ヘッダー ("Content-type: application/octet-stream;" ) ;
ヘッダー ("Content-length: ".strlen($data));
ヘッダー ("Content-Disposition:attachment; filename=".$_FILES['file']['name']) ;
echo $data;
} else {
ヘッダー ("Content-type: text/html; charset=UTF-8");
if ($_POST['email']); 🎜> echo htmlentities(nochaoscode($encode, $_POST['email'], true));
}
else {
echo htmlentities(nochaoscode($encode, $_POST['content'] ) );
}
?>


encode:

ファイル:

< ; input type="submit" />

encode:
content:




エンコード:

メール:

}
?>






声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境