Как узнать размер папки в php?

Пользователь

от fidel , в категории: PHP , 2 года назад

Как узнать размер папки в php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dmitrypro77 , 2 года назад

@fidel Вы можете использовать цикл foreach чтобы пройти по файлам в этой папке и сложить размер всех файлов в ней, ниже код как пример на PHP:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
<?php

// Текущая директория
$path = __DIR__;
$size = 0;
foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path, FilesystemIterator::SKIP_DOTS)) as $file) {
    $size += $file->getSize();
}

echo $size;
Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от hobart.rath , год назад

@fidel 

Вы можете использовать функцию scandir() и цикл foreach для подсчета размера папки. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
function folderSize ($dir) {
  $size = 0;
  foreach (glob(rtrim($dir, '/').'/*', GLOB_NOSORT) as $each) {
    $size += is_file($each) ? filesize($each) : folderSize($each);
  }
  return $size;
}

$folder = '/path/to/folder';
echo folderSize($folder);