이 기사의 예에서는 ThinkPHP에서 인증 코드 페이지를 열 때 잘못된 문자가 표시되는 문제에 대한 해결 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.
thinkphp로 개발하다보면 인증코드가 왜곡되는 문제가 가끔 발생하는데, 해결방법은 아래 파일을 루트디렉토리에 넣어서 접근하여 해결하면 됩니다.
함수 checkdir($basedir){
if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($file != '.' && $file != '..'){
If (!is_dir($basedir."/".$file)) {
echo "파일 이름: $basedir/$file ".checkBOM("$basedir/$file")."
"
}else{
$dirname = $basedir."/".$file
checkdir($dirname);
}
}
}
닫힘($dh)
}
}
함수 checkBOM($filename) {
글로벌 $자동
$contents = file_get_contents($filename)
$charset[1] = 하위 문자열($contents, 0, 1)
$charset[2] = 하위 문자열($contents, 1, 1)
$charset[3] = 하위 문자열($contents, 2, 1)
if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
if ($auto == 1) {
$rest = substr($contents, 3)
다시 작성($filename, $rest)
Return("BOM을 찾았으며 자동으로 제거되었습니다.");
} 다른 {
Return("BOM을 찾았습니다.");
}
}
그렇지 않으면 반환("BOM을 찾을 수 없습니다.");
}
함수 재작성($filename, $data) {
$filenum = fopen($filename, "w")
무리($filenum, LOCK_EX)
fwrite($filenum, $data)
fclose($파일번호)
}
?>
이 기사가 ThinkPHP 프레임워크를 기반으로 하는 모든 사람의 PHP 프로그래밍에 도움이 되기를 바랍니다.