La función DirectoryIterator::getSize() es una función incorporada en PHP que se usa para devolver el tamaño del elemento DirectoryIterator actual.
Sintaxis:
int DirectoryIterator::getSize( void )
Parámetros: Esta función no acepta ningún parámetro.
Valor devuelto: esta función devuelve el tamaño del archivo, en bytes.
Los siguientes programas ilustran la función DirectoryIterator::getSize() en PHP:
Programa 1:
<?php // Create a directory Iterator $directory = new DirectoryIterator(dirname(__FILE__)); // Loop runs while directory is valid while ($directory->valid()) { // Check it is directory or not if ($directory->isDir()) { $file = $directory->current(); echo $file->getFilename() . " | Size: " . $directory->getSize() . "<br>"; } // Move to next element of directory $directory->next(); } ?>
Producción:
. | Size: 4096 .. | Size: 12288 dashboard | Size: 4096 img | Size: 0 webalizer | Size: 0 xampp | Size: 0
Programa 2:
<?php // Create a directory Iterator $directory = new DirectoryIterator(dirname(__FILE__)); // Loop runs for each element of directory foreach($directory as $dir) { $file = $directory->current(); echo $dir->key() . " => " . $file->getFilename() . " | Size: " . $dir->getSize() . "<br>"; } ?>
Producción:
0 => . | Size: 4096 1 => .. | Size: 12288 2 => applications.html | Size: 3607 3 => bitnami.css | Size: 177 4 => dashboard | Size: 4096 5 => favicon.ico | Size: 30894 6 => geeks.PNG | Size: 22358 7 => gfg.php | Size: 273 8 => img | Size: 0 9 => index.php | Size: 260 10 => webalizer | Size: 0 11 => xampp | Size: 0
Nota: El resultado de esta función depende del contenido de la carpeta del servidor.
Referencia: https://www.php.net/manual/en/directoryiterator.getsize.php