파일을 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!