ホームページ > データベース > mysql チュートリアル > MySQL データベースで破損した UTF-8 エンコーディングを修復するにはどうすればよいですか?

MySQL データベースで破損した UTF-8 エンコーディングを修復するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-07 07:58:13
オリジナル
575 人が閲覧しました

How to Repair Corrupted UTF-8 Encoding in MySQL Databases?

破損した UTF-8 エンコーディングの修復

この記事では、MySQL データベースにおける memperbaiki pengkodean UTF-8 yang rakus の問題について説明します。この問題は、PHP 5 が utf8_general_ci 照合順序で使用され、適切な UTF-8 ヘッダーが設定されている場合に、「î」のような文字化けとして現れます。

破損した文字のマッピング

次の関数を利用して、破損した文字のインスタンスを対応する正しい UTF-8 にマッピングできます。文字:

function fixUtf8($string) {
  $replacements = array(
    "î" => "®",
    "í" => "í",
    "ü" => "ü"
  );
  
  return str_ireplace(array_keys($replacements), array_values($replacements), $string);
}
ログイン後にコピー

データベースのダンプと復元

別の方法では、データベース データをダンプし、それを再ロードして二重エンコードされた UTF-8 文字を解決します:

mysqldump -h DB_HOST -u DB_USER -p DB_PASSWORD --opt --quote-names \
    --skip-set-charset --default-character-set=latin1 DB_NAME > DB_NAME-dump.sql

mysql -h DB_HOST -u DB_USER -p DB_PASSWORD \
    --default-character-set=utf8 DB_NAME < DB_NAME-dump.sql
ログイン後にコピー

通常、この方法により問題が効果的に解決されます。

以上がMySQL データベースで破損した UTF-8 エンコーディングを修復するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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