ホームページ > バックエンド開発 > PHPの問題 > phpをutf-8に変換する方法 中国語文字化け

phpをutf-8に変換する方法 中国語文字化け

藏色散人
リリース: 2023-03-17 20:52:02
オリジナル
3462 人が閲覧しました

phpをutf-8中国語文字化けに変換する解決策: 1. コードの先頭に「header("Content-Type: text/html;charset=utf-8");」を追加します; 2 . ファイルを変換 「UTF-8」で保存; 3. BOMタグを削除します。

phpをutf-8に変換する方法 中国語文字化け

このチュートリアルの動作環境: Windows10 システム、PHP8.1 バージョン、DELL G3 コンピューター

php to utf-8中国語のコードが文字化けするどうすればよいですか?

PHP ページを UTF-8 エンコードに変換する問題

1. コードの先頭に次の行を追加します。

header("Content-Type: text/html;charset=utf-8");
ログイン後にコピー

2. PHP ファイルのエンコーディングの問題

エディターのメニュー: [ファイル] -> [名前を付けて保存] をクリックすると、現在のファイルのエンコーディングが表示されます。ファイルのエンコーディングが正しいことを確認してください。は: UTF-8、

ANSI の場合、エンコーディングを UTF-8 に変更する必要があります。

3. PHP ファイル ヘッダーの BOM の問題:

PHP ファイルには BOM タグがあってはなりません

そうしないと、セッションは使用されず、同様のプロンプトが表示されます。

警告: session_start() [function.session-start]: セッション キャッシュ リミッターを送信できません - ヘッダーはすでに送信されています

これは、session_start() の実行時にページ全体を出力できないためです。 , しかし、前の PHP ページに BOM タグが存在する場合、

PHP はこの BOM タグを出力として扱うため、エラーが発生します。

したがって、PHP ページは BOM タグを削除する必要があります

この BOM タグを削除する方法:

1. Dreamweaver でファイルを開いて再保存できます。 BOM タグは削除できます。

2. EditPlus でファイルを開き、メニューの「環境設定」->「ファイル」->「UTF-8 ID」で、「署名を常に削除する」に設定します。

##ファイルを保存すると、BOM タグを削除できます。

4. PHP がファイルを添付ファイルとして保存するときの UTF-8 エンコードの問題:

PHP がファイルを添付ファイルとして保存するとき、ファイル名は GB2312 でエンコードされている必要があります。ファイル名に中国語が含まれていると文字化けします:

PHP 自体が UTF-8 エンコード形式のファイルの場合、

ファイル名変数を UTF-8 から変換する必要があります。 8 GB2312:

iconv("UTF-8", "GB2312", "$filename");
ログイン後にコピー

5. 記事タイトルが切り詰められて表示されると、文字化けや「?」疑問符が表示されます:

一般に、記事タイトルが非常に長い場合、タイトルが表示されますが、これは記事に影響します。タイトルは切り詰められます。

UTF-8 エンコーディング形式の中国語文字は幅 3 文字を占めるため、

#タイトルをインターセプトする場合、場合によっては、漢字の 1 文字だけがインターセプトされる場合や、2 文字幅の場合、

が完全にインターセプトされず、文字化けや「?」疑問符が表示されます。

次の関数を使用してください。タイトルをインターセプトすれば、問題はありません:

function get_brief_str($str, $max_length) 
{ 
echo strlen($str) ."<br>"; 
if(strlen($str) > $max_length) 
{ 
$check_num = 0; 
for($i=0; $i < $max_length; $i++) 
{ 
if (ord($str[$i]) > 128) 
$check_num++; 
} 
if($check_num % 3 == 0) 
$str = substr($str, 0, $max_length)."..."; 
else if($check_num % 3 == 1) 
$str = substr($str, 0, $max_length + 2)."..."; 
else if($check_num % 3 == 2) 
$str = substr($str, 0, $max_length + 1)."..."; 
} 
return $str; 
}
ログイン後にコピー

推奨される学習: "

PHP ビデオ チュートリアル

"

以上がphpをutf-8に変換する方法 中国語文字化けの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート