PHP의 디렉토리에서 파일 이름 검색
PHP에서는 디렉토리 내의 파일 이름을 얻는 것이 간단한 작업일 수 있습니다. 그러나 제시한 코드가 파일 이름 대신 '1'을 반환하는 문제가 발생할 수 있습니다.
코드를 자세히 살펴보겠습니다.
if (is_dir($log_directory)) { if ($handle = opendir($log_directory)) { while($file = readdir($handle) !== FALSE) { $results_array[] = $file; } closedir($handle); } }
이 코드에서 opendir() 및 readdir()을 사용하여 디렉터리에서 파일을 읽으려고 합니다. 이 접근 방식은 많은 경우에 작동하지만 항상 파일 이름이 올바르게 표시되지 않을 수도 있습니다.
해결책: 파일 검색에 glob() 활용
opendir( ) 및 readdir()을 사용하려면 glob() 함수 활용을 고려하세요. 디렉터리 내의 파일 목록을 검색하는 보다 효율적인 방법을 제공합니다.
foreach(glob($log_directory.'/*.*') as $file) { ... }
이 코드에서 glob()은 $log_directory에서 모든 파일 확장자(*.*)를 가진 모든 파일을 검색합니다. 발견된 파일에 대한 전체 경로가 포함된 배열을 반환합니다.
glob()에서 얻은 배열을 반복하면 이름을 포함하여 각 파일의 전체 경로에 액세스할 수 있습니다. 이 방법을 사용하면 파일 이름으로 '1'을 가져오는 문제가 해결되어 디렉터리 내의 실제 파일 이름을 제공합니다.
위 내용은 내 PHP 디렉토리 목록이 파일 이름 대신 '1'을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!