[英]How to get filtered file name list using scandir in PHP?
我想在文件夾中獲取所有'_img'和PDF類型的文件
而不是使用
$fileArray = scandir($dir);
foreach ($fileArray as $file) {
if (preg_match("_img",$file) && pathinfo($file, PATHINFO_EXTENSION) == 'pdf'){
$filteredArray[] = $file;
}
}
有沒有捷徑或者這是最好的方式? 謝謝
使用php glob()函數
glob()函數根據libc glob()函數使用的規則搜索匹配模式的所有路徑名,這類似於常見shell使用的規則
<?php
$filteredArray = array();
foreach (glob($dir."/*_img.pdf") as $filename)
$filteredArray[] = $filename;
?>
還有fnmatch()函數,它將文件名與模式匹配
最后一個解決方案是將DirectoryIterator與FilterIterator一起使用
對我來說,這很好。 你走進你的目錄並將其存儲到一個數組。
在此級別,不需要優化。 你會贏得花生失去時間來優化這一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.