>  기사  >  백엔드 개발  >  다시 인코딩된 파일이 여전히 이전 인코딩을 사용하는 이유는 무엇입니까?

다시 인코딩된 파일이 여전히 이전 인코딩을 사용하는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-07 13:21:03842검색

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

파일을 UTF-8로 다시 인코딩

UTF-8 인코딩이 아닌 파일 모음이 있는데 UTF-8을 사용하도록 사이트를 변환하는 중입니다. 이러한 전환을 용이하게 하기 위해 파일을 읽고 UTF-8로 저장하는 간단한 스크립트를 고안했지만 결과 파일은 이전 인코딩을 유지합니다.

문제의 스크립트는 다음과 같습니다.

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);
    }
}

파일을 UTF-8 인코딩으로 성공적으로 저장하려면 각 파일의 시작 부분에 UTF-8 BOM(바이트 순서 표시)을 추가해야 합니다.

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

이를 추가하면, 스크립트는 출력 파일을 UTF-8로 효과적으로 인코딩하여 최신 웹 표준과의 호환성을 보장합니다.

위 내용은 다시 인코딩된 파일이 여전히 이전 인코딩을 사용하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.