>  기사  >  백엔드 개발  >  PHP에서 디렉토리가 비어 있는지 확실하게 확인하는 방법은 무엇입니까?

PHP에서 디렉토리가 비어 있는지 확실하게 확인하는 방법은 무엇입니까?

DDD
DDD원래의
2024-10-26 10:09:02727검색

How to Reliably Determine if a Directory is Empty in PHP?

PHP에서 디렉토리가 비어 있는지 확인

디렉토리에 파일이 없는지 확인하기 위한 일반적인 접근 방식은 PHP의 내장 기능을 사용하는 것입니다. glob이나 scandir과 같습니다. 그러나 이러한 기술은 특정 숨겨진 파일을 간과할 수 있습니다. 정확성을 보장하려면 is_dir_empty() 함수 활용을 고려하세요.

is_dir_empty() 함수

is_dir_empty() 함수는 scandir을 활용하여 디렉터리 내용을 자세히 조사합니다. 디렉토리만 있는 경우 . (현재 디렉터리) 및 ..(상위 디렉터리)가 있으면 디렉터리는 비어 있는 것으로 간주되어 True를 반환합니다. 그렇지 않으면 False를 반환하여 다른 파일이나 하위 디렉터리가 있음을 나타냅니다.

구현 예

<code class="php">function is_dir_empty($dir) {
  return (count(scandir($dir)) == 2);
}</code>

대체 함수

또는 더 효율적인 방법은 opendir 및 readdir을 사용하여 파일을 완전히 읽지 않고 파일 존재 여부를 직접 확인하는 것입니다.

<code class="php">function dir_is_empty($dir) {
  $handle = opendir($dir);
  while (false !== ($entry = readdir($handle))) {
    if ($entry != "." &amp;&amp; $entry != "..") {
      closedir($handle);
      return false;
    }
  }
  closedir($handle);
  return true;
}</code>

제어 구조에서 함수 사용

한 번 적절한 함수를 식별했다면 중간 변수 없이 제어 구조에서 해당 출력을 직접 활용할 수 있습니다. 예를 들면 다음과 같습니다.

<code class="php">if (is_dir_empty($dir)) {
  echo "The folder is empty.";
} else {
  echo "The folder is NOT empty.";
}</code>

위 내용은 PHP에서 디렉토리가 비어 있는지 확실하게 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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