php utf-8 文字化けの解決策: 1. "my.ini" ファイルを検索し、エンコーディングを "utf8" に変更します; 2. ステートメントを "mysql_query("set names 'utf8'" ) に設定します;"; 3. 「テキストファイルのエンコーディング」でデフォルトのエンコーディングを「utf8」に設定します。
php utf-8 文字化け問題の解決策
1. データベースを構築するとき、特に phpMyAdmin とMYSQL を扱う場合、通常は utf-8 で、フィールドは utf8_general_ci
データベース設定:
my.ini ファイルを調べます:
[mysql] default-character-set = utf8 [mysqld] default-character-set = utf8 init_connect = 'SET NAMES utf8 '
すべてを次のように設定します。 utf8
mysql サービスを保存して再起動します
2. データを処理する場合 mysql_query("set names 'utf8'"); 注: utf-8 ではなく utf8
# 3. PHP ファイルのデフォルトのエンコードは ANSI なので、UTF-8 に変換する必要があります。editplus の変換方法としては、このような機能があります。「名前を付けて保存」の際に、UTF-8 にエンコードするオプションがあります。 : 選択できません: UTF-8 BOM, これを選択するとセッション処理時に問題が発生するので注意が必要です. eclipse, Myeclipse, ZendStudio で開発している人もいます. eclipse のデフォルトは ISO-8859-1 「ウィンドウ」->「環境設定」にする必要があります。「環境設定」ウィンドウを開き、左側の「全般」->「ワークスペース」で、「テキスト」でデフォルトのエンコードを utf-8# に設定します。ファイル エンコーディング" ##4。6b2c65d254e5e9a12fcfbb1a8639a948
のように PHP ファイルに記述する必要があります。 # または コードは次のとおりです:<?php header('Content-Type:text/html;charset=utf-8');?>5. また、中国語などの 2 バイトを処理すると文字化けが発生することがあります。PHP では iconv と mb_convert_encoding を使用して 2 バイトを処理できます。残りについては、PHP ヘルプ マニュアルを参照してください6. 1 点 (不足している点) を追加すると、プログラムでは、データ転送時にエンコードの問題が発生する可能性があることを知っておく必要がありますが、その方法がわかりません。渡されたデータが使用されます。それを処理するために PHP ではどのようなエンコーディングが提供されていますか? ここに私が書いた簡単なメソッドがあります。次のように コードを参照できます:
//编码转换 function display_fileencoding($filename) { if(extension_loaded("mbstring")) { $code=mb_detect_encoding($filename);//检测字符串编码 $filename=mb_convert_encoding($filename,"UTF-8",$code);//将编码$code转换为utf-8编码 return $filename; } else die("请检查系统是否正确安装配置mbstring"); }mbstring を確認してくださいは php にあります。ini で 7 を有効にします。上記のコードが一貫していることを確認してください。 !データベースと Web ページの出力が文字化けすることはなくなりました。何か問題がある場合は、メッセージを残して指摘してください。 ! その他の関連記事については、
PHP 中国語 Web サイト
をご覧ください。以上がphp utf-8の文字化け問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。