> 백엔드 개발 > PHP 문제 > PHP 파일 탐색 시 잘못된 문자 문제를 해결하는 방법

PHP 파일 탐색 시 잘못된 문자 문제를 해결하는 방법

藏色散人
풀어 주다: 2023-03-04 13:52:01
원래의
2369명이 탐색했습니다.

PHP에서 이동하는 잘못된 파일에 대한 해결 방법: 먼저 PHP 샘플 파일을 만든 다음 파일 인코딩을 "GBK"로 변경하고 마지막으로 "read_all" 메서드를 사용하여 폴더의 모든 파일을 이동합니다.

PHP 파일 탐색 시 잘못된 문자 문제를 해결하는 방법PHP Video Tutorial"

저는 최근 인터뷰를 보고 큰 충격을 받았습니다. 고향 허난으로 돌아와 1년 넘게 아기를 낳았는데 더 이상 키울 수 없다는 걸 깨달았습니다. IT 산업의 발전과 함께

면접 과정 많은 회사에서 필기시험 문제에 이 문제가 나오는 것을 발견했고, 업무에서도 자주 사용하는 기능이기도 합니다.

이건 케이크 아닌가요

<?php
/*
* 遍历文件夹下所有文件
*
* 作者:郭猛
* 邮箱:martin.guo@qq.com
*
*/

function read_all ($dir){
    if(!is_dir($dir)) return false;

    $handle = opendir($dir);

    if($handle){
        while(($fl = readdir($handle)) !== false){
            $temp = $dir.DIRECTORY_SEPARATOR.$fl;
            //如果不加  $fl!=&#39;.&#39; && $fl != &#39;..&#39;  则会造成把$dir的父级目录也读取出来
            if(is_dir($temp) && $fl!=&#39;.&#39; && $fl != &#39;..&#39;){
                echo &#39;目录:&#39;.$temp.&#39;<br>&#39;;
                read_all($temp);
            }else{
                if($fl!=&#39;.&#39; && $fl != &#39;..&#39;){

                    echo &#39;文件:&#39;.$temp.&#39;<br>&#39;;
                }
            }
        }
    }
}

read_all(&#39;D:\wamp\www\test&#39;);

?>
로그인 후 복사

자신있게 브라우저를 열어보세요

PHP 파일 탐색 시 잘못된 문자 문제를 해결하는 방법저는 屮艸芔茻입니다. 대체 뭐죠! </p><p>Windows 환경에서는 파일 인코딩이 UTF8입니다. 디렉토리에 중국어 디렉토리가 있으면 문자가 깨져서 표시됩니다! ! </p><p>이때 내 파일 인코딩과 브라우저 표시 인코딩은 모두 utf-8입니다. Windows의 디렉터리 이름이 GBK인 줄 알고 iconv를 사용하여 인코딩 형식을 17번째 줄과 같이 변경했습니다. 아래: </p><div class=

<?php
/*
* 遍历文件夹下所有文件
*
* 作者:郭猛
* 邮箱:martin.guo@qq.com
*
*/

function read_all ($dir){
    if(!is_dir($dir)) return false;

    $handle = opendir($dir);

    if($handle){
        while(($fl = readdir($handle)) !== false){
            $temp = iconv(&#39;GBK&#39;,&#39;utf-8&#39;,$dir.DIRECTORY_SEPARATOR.$fl);//转换成utf-8格式
            //如果不加  $fl!=&#39;.&#39; && $fl != &#39;..&#39;  则会造成把$dir的父级目录也读取出来
            if(is_dir($temp) && $fl!=&#39;.&#39; && $fl != &#39;..&#39;){
                echo &#39;目录:&#39;.$temp.&#39;<br>&#39;;
                read_all($temp);
            }else{
                if($fl!=&#39;.&#39; && $fl != &#39;..&#39;){

                    echo &#39;文件:&#39;.$temp.&#39;<br>&#39;;
                }
            }
        }
    }
}

read_all(&#39;D:\wamp\www\test&#39;);

?>
로그인 후 복사

17번째 코드 줄에 iconv를 추가하면 이번에는 문제가 없을 것입니다

PHP 파일 탐색 시 잘못된 문자 문제를 해결하는 방법file로 판단됩니다! 다음 파일을 읽지 않았습니다!

단독으로 테스트해봤습니다

<?php

$dir=&#39;D:\wamp\www\test\test_dir\子目录&#39;;
var_dump(is_dir($dir));

?>
로그인 후 복사

utf8 인코딩 형식에서는 정말 안되네요

PHP 파일 탐색 시 잘못된 문자 문제를 해결하는 방법그냥 파일 인코딩을 GBK로 바꾸세요</p><p><img style=

위 내용은 PHP 파일 탐색 시 잘못된 문자 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿