현재 위치: > 최신 기사 목록> PHP Glob 기능을 사용하여 다른 파일 확장자를 효율적으로 일치시키는 방법은 무엇입니까?

PHP Glob 기능을 사용하여 다른 파일 확장자를 효율적으로 일치시키는 방법은 무엇입니까?

gitbox 2025-08-26
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 이 기사의 예제 코드,사용 방법을 보여줍니다 PHP ~의 glob 파일 일치 함수</span></span><span>
</span><span><span class="hljs-comment">// glob 是一个用于查找符合模式~의文件路径~의函数,와일드 카드 문자를 지원합니다</span></span><span>

</span><span><span class="hljs-comment">// 这里是文章内容~의前置无关代码示例,실제 환경에서 코드 구조를 시뮬레이션하십시오</span></span><span>
</span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">dummyFunction</span></span><span>(</span><span><span class="hljs-params"></span></span><span>) {
    </span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-string">"이 코드는 기사의 주제와 관련이 없습니다.,시연만을 위해"</span></span><span>;
}
</span><span><span class="hljs-title function_ invoke__">dummyFunction</span></span><span>();

</span><span><span class="hljs-meta">?></span></span><span>

<hr>

<h1>사용 방법 PHP glob 函数高效匹配不同~의文件扩展名?</h1>

<p>존재하다 PHP 가운데,<code></span><span><span class="hljs-title function_ invoke__">glob</span></span><span>()

예를 들어, 현재 디렉토리의 모든 .txt 파일을 일치시킵니다.

 <span class="fun"></span> <span> <span class = "hljs-variable"> $ files </span> </span> <span> </span> <span> <span class = "hljs-title function_ __"> glob </span> </span> <span> (</span> <span> <span class = "hljs-string";</span>

2. 여러 연장과 일치하는 일반적인 방법

방법 1 : 여러 글로그 호출을 사용하여 결과를 병합합니다.

이것은 각각 Glob을 여러 번 호출 한 다음 배열을 병합하는 가장 직관적 인 방법입니다.

 </span><span><span class="hljs-variable">$extensions</span></span><span> = [</span><span><span class="hljs-string">'jpg'</span></span><span>, </span><span><span class="hljs-string">'png'</span></span><span>, </span><span><span class="hljs-string">'gif'</span></span><span>];
</span><span><span class="hljs-variable">$files</span></span><span> = [];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$extensions</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$ext</span></span><span>) {
    </span><span><span class="hljs-variable">$files</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_merge</span></span><span>(</span><span><span class="hljs-variable">$files</span></span><span>, </span><span><span class="hljs-title function_ invoke__">glob</span></span><span>(</span><span><span class="hljs-string">"*.<span class="hljs-subst">{$ext}</span></span></span><span>"));
}

단점은 파일 시스템을 여러 번 읽어야한다는 것입니다. 이는 약간 덜 효율적입니다.

방법 2 : Curly Brace 모드 사용 (Glob_brace를 켜야합니다)

PHP의 글로벌은 Bash와 유사한 팔찌 확장을 지원하지만 Glob_brace 플래그가 필요합니다.

 </span><span><span class="hljs-variable">$files</span></span><span> = </span><span><span class="hljs-title function_ invoke__">glob</span></span><span>(</span><span><span class="hljs-string">"*.{jpg,png,gif}"</span></span><span>, GLOB_BRACE);

이런 식으로 여러 확장자가 하나의 호출 만 일치 할 수 있으며 이는 더 효율적입니다.

3. 주목할만한 것들
  • Glob_brace 호환성 : 일부 시스템 (일부 비 GNU 환경)에서 Glob_brace는 지원되지 않을 수 있으며 운영 환경을 확인해야합니다.
  • 사례 민감도 : 글로벌 매칭은 기본적으로 사례에 민감합니다. 확장을 다양한 사례와 일치 시키려면 여러 확장 조합을 작성하는 것과 같은 추가 처리가 필요합니다.

4. 샘플 코드와 결합
 </span><span><span class="hljs-comment">// 사용 GLOB_BRACE 한 번에 여러 확장을 일치시킵니다</span></span><span>
</span><span><span class="hljs-variable">$files</span></span><span> = </span><span><span class="hljs-title function_ invoke__">glob</span></span><span>(</span><span><span class="hljs-string">"*.{jpg,png,gif}"</span></span><span>, GLOB_BRACE);
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$files</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$file</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"파일을 찾으십시오: "</span></span><span> . </span><span><span class="hljs-variable">$file</span></span><span> . </span><span><span class="hljs-string">"\n"</span></span><span>;
}

요약

Glob_brace 플래그와 함께 Glob () 의 브레이스 확장을 사용하는 것은 PHP의 여러 파일 확장을 효율적으로 일치시키는 간단한 솔루션입니다. 이 방법은 호환성이 허용하는 경우 바람직한 것이 좋습니다. 그렇지 않으면 Glob ()를 여러 번 호출하고 결과를 병합하여 유사한 기능을 달성 할 수 있습니다.

이 기사가 PHP 글로벌 기능을 더 잘 활용하여 파일 매칭 작업을 처리하는 데 도움이되기를 바랍니다.