Foros del Web » Programando para Internet » PHP »

Ver cantidad de archivos en carpetas y subcarpetas o sub sub carpetas con PHP

Estas en el tema de Ver cantidad de archivos en carpetas y subcarpetas o sub sub carpetas con PHP en el foro de PHP en Foros del Web. deseo saber la cantidad de archivos que existen en un directorio, algo asi como dar click derecho en una carpeta y ver la cantidad de ...
  #1 (permalink)  
Antiguo 17/10/2011, 11:19
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 17 años
Puntos: 25
Pregunta Ver cantidad de archivos en carpetas y subcarpetas o sub sub carpetas con PHP

deseo saber la cantidad de archivos que existen en un directorio, algo asi como dar click derecho en una carpeta y ver la cantidad de archivos existentes sin importar las subs carpetas (o sub sub carpetas o sub sub sub, etc carpetas)... que existan

espero puedan entender... no existe alguna función??? trabajo en un servidor linux centos5...
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #2 (permalink)  
Antiguo 17/10/2011, 12:11
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 7 meses
Puntos: 2135
Respuesta: Ver cantidad de archivos en carpetas y subcarpetas o sub sub carpetas con

Puedes usar una función recursiva para ir cargando la información de cada sub-directorio que te encuentres, en el Manual de PHP (http://www.php.net/opendir) en los comentarios hay varias funciones que te pueden dar una idea.

Saludos.
  #3 (permalink)  
Antiguo 17/10/2011, 12:14
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: Ver cantidad de archivos en carpetas y subcarpetas o sub sub carpetas con

Hay varias formas de resolverlo, te dejo una con iterators:

Código PHP:
Ver original
  1. class OnlyFileFilterIterator extends \FilterIterator
  2. {
  3.     public function __construct($dirOrIterator = '.')
  4.     {
  5.         if (is_string($dirOrIterator)) {
  6.             if (!is_dir($dirOrIterator)) {
  7.                 throw new \InvalidArgumentException('Expected a valid directory name');
  8.             }
  9.             $dirOrIterator = new \RecursiveDirectoryIterator($dirOrIterator);
  10.         }
  11.  
  12.         if (!$dirOrIterator instanceof \DirectoryIterator) {
  13.             throw new \InvalidArgumentException('Expected a DirectoryIterator');
  14.         }
  15.  
  16.         if ($dirOrIterator instanceof \RecursiveIterator) {
  17.             $iterator = new \RecursiveIteratorIterator($dirOrIterator);
  18.         } else {
  19.             $iterator = $dirOrIterator;
  20.         }
  21.  
  22.         parent::__construct($iterator);
  23.         $this->rewind();
  24.     }
  25.  
  26.     public function accept()
  27.     {
  28.         return $this->getInnerIterator()->current()->isFile();
  29.     }
  30.  
  31. }

uso:

Código PHP:
Ver original
  1. $filtered = new OnlyFileFilterIterator('/path/to/dir');
  2. echo iterator_count($filtered) . PHP_EOL;
__________________
http://es.phptherightway.com/
thats us riders :)

Etiquetas: cantidad, carpetas, subcarpetas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:18.