내가 물어보기 전에 운이 좋았지 만 검색했습니다.php scandir -> 파일/디렉토리 검색
나는 파일/폴더를 검색 할 수있는 간단한 스크립트를 찾고 있습니다. PHP 매뉴얼에서이 코드 스 니펫을 발견했습니다 (필자는이 코드가 필요하다고 생각합니다). 그러나 그것은 저에게 효과적이지 않습니다.
는 "여기. 마스크를 사용하여 파일/디렉토리를 검색 할 수있는 간단한 방법을 찾고 이러한 기능입니다되었습니다. 기본적으로
,이 기능은 메모리에 위해 scandir() 결과를 유지합니다 scaning을 피하기 위해 동일한 디렉토리에 대해 여러 번. "
<?php
function sdir($path='.', $mask='*', $nocache=0){
static $dir = array(); // cache result in memory
if (!isset($dir[$path]) || $nocache) {
$dir[$path] = scandir($path);
}
foreach ($dir[$path] as $i=>$entry) {
if ($entry!='.' && $entry!='..' && fnmatch($mask, $entry)) {
$sdir[] = $entry;
}
}
return ($sdir);
}
?>
는 어떤 도움을
피터 감사
감사가, Artefacto-의 솔루션은 나를 위해 좋은,하지만 :
문서는 여기에서 찾을 수 있습니다 : 당신은 당신의 자신의 sfException 클래스를 만들 수 있습니다! 정규식없이 비슷한 솔루션이 있습니까? 또는 정규 표현식은 무엇이며, 마스크가있는 경우 /없는 경우에만 파일 이름을 검색하고 싶습니다. 예제 : stackoverflow.zip "오버플로"또는 "스택"또는 "스택 오버 플로우"를 검색하고 싶습니다 ... 대단히 고마워요! – Peter
그 때문에'overflow','stack' 및'stackoverflow' 정규 표현식 만 필요합니다. 이 세 가지는 "stackoverflow.zip"과 일치합니다. 그 간단한 방법으로 정규 표현식을 사용할 수 있습니다. 특별한 의미를 갖는 문자를 이스케이프 처리 할 때주의해야합니다. – Artefacto
Soo 간단! 고마워요! – Peter