Maison  >  Article  >  développement back-end  >  Que dois-je faire si les caractères sont tronqués après que PHP les ait écrits dans un fichier txt ?

Que dois-je faire si les caractères sont tronqués après que PHP les ait écrits dans un fichier txt ?

藏色散人
藏色散人original
2021-09-15 10:07:532846parcourir

Solution aux caractères tronqués après que PHP ait écrit un fichier txt : 1. Créez un exemple de fichier PHP ; 2. Créez "function file_utf8($filepath){...}" 3. Enregistrez le fichier txt sous "UTF-8 » ; C'est ça.

Que dois-je faire si les caractères sont tronqués après que PHP les ait écrits dans un fichier txt ?

L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3

Que dois-je faire si les caractères sont tronqués après que php ait écrit un fichier txt

php a toujours des problèmes ? lors du traitement de l'encodage chinois, il s'agit de l'encodage. En cas de problème, vous pouvez enregistrer le fichier txt en encodage UTF-8 avant le traitement

La référence est la suivante :

function file_utf8($filepath){
    $f_contents= file_get_contents($filepath);
     
    $encoding = mb_detect_encoding($f_contents, array('GB2312','GBK','UTF-16','UCS-2','UTF-8','BIG5','ASCII'));
 
    $content_u="";
    $handle=fopen($filepath,"r");
    if ($handle){
        while (!feof($handle)) {
            $buffer= fgets($handle);
            if ($encoding != false) {
                if (mb_detect_encoding($buffer)!='UTF-8'){
                    $buffer = iconv($encoding, 'UTF-8', $buffer);
                }
            }else{
                    $buffer = mb_convert_encoding ( $buffer, 'UTF-8','Unicode');
            }
            $content_u.=$buffer;
        }
        fclose($handle);
        return $info=array('status'=>1,'message'=>$content_u);
    }else{
        return $info=array('status'=>0,'message'=>'打开文件失败');
    }
}

Apprentissage recommandé : "Tutoriel vidéo PHP"

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