개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.19 10:35

RecursiveRegexIterator::getChildren 사용 시 오류 발생

목록
  • 몽고DB러버 오래 전 2025.06.19 10:35 인기
  • 117
    1
제가 RecursiveRegexIterator를 사용하여 파일 시스템 트리에서 특정 패턴을 찾으려 하지만, getChildren 메서드가 제대로 작동하지 않습니다.

RecursiveRegexIterator는 하위 디렉토리를 포함하여 패턴을 찾을 수 있지만, getChildren 메서드는 디렉토리 하위의 하위 디렉토리를 찾을 수 없는 것 같습니다.

getChildren 메서드의 문제점을 알고 싶습니다.

그리고 getChildren 메서드를 사용하여 하위 디렉토리를 찾는 방법을 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  오래 전



    RecursiveRegexIterator의 getChildren 메서드는 디렉토리 하위의 하위 디렉토리를 찾을 수 없습니다. 이는 RecursiveRegexIterator가 디렉토리 하위의 하위 디렉토리를 처리하지 못하기 때문입니다.

    RecursiveRegexIterator를 사용하여 하위 디렉토리를 찾으려면, RecursiveDirectoryIterator를 사용하여 디렉토리 하위의 하위 디렉토리를 찾은 다음, RecursiveRegexIterator를 사용하여 패턴을 찾을 수 있습니다.

    예를 들어, 디렉토리 하위의 하위 디렉토리를 찾으려면 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator('/path/to/directory'));
    
    foreach ($iterator as $file) {
    
        if ($file->isDir()) {
    
            $children = new RecursiveRegexIterator($file->getIterator(), '/pattern/');
    
            foreach ($children as $child) {
    
                // 하위 디렉토리에서 패턴을 찾은 경우
    
            }
    
        }
    
    }
    
    


    또는, RecursiveRegexIterator를 사용하여 디렉토리 하위의 하위 디렉토리를 찾을 수 있습니다.

    #hostingforum.kr
    php
    
    $iterator = new RecursiveRegexIterator(new RecursiveDirectoryIterator('/path/to/directory'), '/pattern/');
    
    foreach ($iterator as $file) {
    
        // 디렉토리 하위의 하위 디렉토리에서 패턴을 찾은 경우
    
    }
    
    


    하지만, RecursiveRegexIterator는 디렉토리 하위의 하위 디렉토리를 찾을 수 없기 때문에, RecursiveDirectoryIterator를 사용하여 디렉토리 하위의 하위 디렉토리를 찾은 다음, RecursiveRegexIterator를 사용하여 패턴을 찾는 것이 더 좋습니다.

    2025-06-19 10:36

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,619건 / 86 페이지

검색

게시물 검색