2009年10月26日 星期一

php計算資料夾內檔案數量的語法

使用php計算某一個資料夾內的檔案數量的語法

<?php
$dir="要計算的資料夾名稱";
$num=count(glob("$dir/*.*"));
//*.*也可以改為特定的副檔名,如 *.jpg 這樣就只會統計該資料夾內所有副檔名為jpg的檔案數量
echo $num;
?>


2017.12.24更新

上面的語法在資料夾內沒有檔案時也會得到數量1的錯誤資訊
正確數量可用以下語法


<?php

    $i = 0; 
    $dir = '資料夾路徑(相對路徑)';
    if ($handle = opendir($dir)) {
        while (($file = readdir($handle)) !== false){
            if (!in_array($file, array('.', '..')) && !is_dir($dir.$file)) 
                $i++;
        }
    }
    echo "資料夾內有 $i 個檔案";

?>

下面的語法也可計算資料夾內的檔案數量
<?php
$Path = '資料夾路徑(相對路徑)'; 
$files = glob($Path . '*', GLOB_MARK); //files 會取得檔案名稱的陣列
echo count($files);
?>

沒有留言: