Maison >développement back-end >tutoriel php >Pourquoi mes fichiers réencodés utilisent-ils toujours leur ancien encodage ?

Pourquoi mes fichiers réencodés utilisent-ils toujours leur ancien encodage ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-07 13:21:03933parcourir

Why Are My Re-Encoded Files Still Using Their Old Encoding?

Réencodage de fichiers en UTF-8

Vous disposez d'une collection de fichiers qui ne sont pas encodés en UTF-8, et vous Vous êtes en train de convertir votre site pour utiliser UTF-8. Pour faciliter cette transition, vous avez conçu un script simple qui lit les fichiers et les enregistre au format UTF-8, mais les fichiers résultants conservent leur ancien encodage.

Voici le script en question :

header('Content-type: text/html; charset=utf-8');
mb_internal_encoding('UTF-8');
$fpath = "folder";
$d = dir($fpath);
while (False !== ($a = $d->read())) {
    if ($a != '.' and $a != '..') {
        $npath = $fpath . '/' . $a;

        $data = file_get_contents($npath);

        file_put_contents('tempfolder/' . $a, $data);
    }
}

Pour réussir à enregistrer les fichiers en codage UTF-8, vous devez ajouter la marque d'ordre d'octet (BOM) UTF-8 au début de chaque fichier :

file_put_contents($myFile, "\xEF\xBB\xBF". $content); 

Avec cet ajout, votre script encodera efficacement les fichiers de sortie en UTF-8, garantissant ainsi la compatibilité avec les normes Web modernes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn