디렉토리의 캐시 파일을 삭제하려면 디렉토리에 최대 50.000 개의 파일을 포함 할 수 있습니다. 나는 현재이 기능을 사용하고 있습니다.PHP 디렉토리에서 파일 검색 및 삭제 - 성능
// Deletes all files in $type directory that start with $start
function clearCache($type,$start)
{
$open = opendir($GLOBALS['DOC_ROOT']."/cache/".$type."/");
while(($file = readdir($open)) !== false)
{
if (strpos($file, $start)!==false)
{
unlink($GLOBALS['DOC_ROOT']."/cache/".$type."/".$file);
}
}
closedir($open);
}
이 방법은 정상적으로 작동하며 빠르지 만 빠른 방법이 있습니까? (scan_dir이 느린 것 같습니다). 캐시를 메모리로 옮길 수 있습니다.
감사합니다, 마을
첫 번째 테스트에서 두 배 이상 빠릅니다. 고마워요! – hamlet
나는 당신의 솔루션을 사용하지 않았지만'glob' 함수는'RecursiveDirectoryIterator'를 사용하는 또 다른 해결책으로 이끌었습니다. 고맙습니다. – dchayka