elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  medir tamaño de carpetas con php
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: medir tamaño de carpetas con php  (Leído 10,349 veces)
SERBice


Desconectado Desconectado

Mensajes: 934


Ver Perfil WWW
medir tamaño de carpetas con php
« en: 22 Marzo 2006, 00:51 am »

hola a todos, kisiera saber si hay alguna funcion en php para medir el tamaño de una carpeta o si hay que construirla.


si hubiese que construirla, ¿alguien no la tendria ya hecha....?


supongo que si php no trae nada para medir carpetas habria que hacer un "mapeado" del directorio midiendo los tamaños de todos los archivos ahi contenidos (incluso en subdirectorios)


En línea

Rentero
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.164


La paciencia es la madre de la ciencia.


Ver Perfil
Re: medir tamaño de carpetas con php
« Respuesta #1 en: 22 Marzo 2006, 16:20 pm »

Llevo mucho tiempo sin programar y no recuerdo que haya ninguna función para eso...

Pero aquí te dejo esto que he hecho en un minutillo xD
Código:
<?php
function sizedir($dir)
{
static $total = 0;

$d = dir($dir);
while(false !== ($archivo = $d->read()))
{
if("." == $archivo || ".." == $archivo)
continue;

$total += sprintf("%u", filesize($archivo));
}
$d->close();

return $total; //resultado en bytes...
}

echo sizedir(".");//tamaño directorio actual :D
?>


« Última modificación: 22 Marzo 2006, 16:22 pm por Rentero » En línea

Firmado.
devcode

Desconectado Desconectado

Mensajes: 106


Ver Perfil
Re: medir tamaño de carpetas con php
« Respuesta #2 en: 22 Marzo 2006, 23:09 pm »

Prueba usando la función para medir el tamaño de archivos:

Código:
$tamano=filesize("./directorio");

;)
En línea

SERBice


Desconectado Desconectado

Mensajes: 934


Ver Perfil WWW
Re: medir tamaño de carpetas con php
« Respuesta #3 en: 27 Marzo 2006, 06:20 am »

hola, no .... la verdad ninguna de las respuestas ha resultado, la funcion de Rentero  no devuelve correctamente el tamaño y presumo que es poke mide el tamaño de los archivos del primer nivel del arbol de directorios y yo necesito que mida todos los subdirectorios tambien.

y devcode, filesize no funciona con directorios ya la he probado sin exito alguno

gracias y espero otra respuesta que me sake de este apuro
En línea

Rentero
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.164


La paciencia es la madre de la ciencia.


Ver Perfil
Re: medir tamaño de carpetas con php
« Respuesta #4 en: 28 Marzo 2006, 15:15 pm »

jejjeej, ya...yo solo te di una idea de como podrías hacerlo no el codigo enterito :P
En línea

Firmado.
n.a.u.t.a

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: medir tamaño de carpetas con php
« Respuesta #5 en: 30 Mayo 2007, 20:06 pm »

Código:
$directorio='path al directorio';

$tamano=exec("du -sk $directorio");

echo $tamano . ' = tamanio de ' . $directorio ;

utilizo un linux/unix y esto me funciono...

tomando en cuenta q el usuario del webserver debe tener como minio permiso para leer la carpeta...
« Última modificación: 30 Mayo 2007, 20:13 pm por n.a.u.t.a » En línea

alone-in-the-chat


Desconectado Desconectado

Mensajes: 587


Ver Perfil
Re: medir tamaño de carpetas con php
« Respuesta #6 en: 30 Mayo 2007, 21:05 pm »

conoces la recursividad???

bueno x si acaso nunca se sabe :)

Código:
<?php
$directorio = "/var/www/cssFiles";

echo "Total : " .Fsize($directorio);
function Fsize($dir)
{
if (is_dir($dir))

{

    if ($gd = opendir($dir))

{

$cont = 0;
        while (($archivo = readdir($gd)) !== false)

{

            if ($archivo != "." && $archivo != ".." )

{

if (is_dir($archivo))
{
$cont += Fsize($dir."/".$archivo);
}else{
$cont += filesize($dir."/".$archivo);
echo  "archivo : " . $dir."/".$archivo . "&nbsp;&nbsp;" . filesize($dir."/".$archivo)."<br />";
}
}

        }

        closedir($gd);

    }
}
return $cont;
}
?>

ahora si los archivos son mas grandes de 2 o 4 megas no olvides implementar  el sprintf("%u", filesize($archivo)).
Saludos y suerte .
En línea

Because maybe
You're gonna be the one that saves me
And after all
You're my wonderwall
d[n_n]b
SERBice


Desconectado Desconectado

Mensajes: 934


Ver Perfil WWW
Re: medir tamaño de carpetas con php
« Respuesta #7 en: 30 Mayo 2007, 23:37 pm »

1: Este tema esta muerto
2: miren la p**a fecha antes de responder
3: gracias por sus respuestas
4: esto ya fue resuelto, y si, conozco la recursividad, aqui esta el post que soluciona este tema, yo mismo lo hice Parche y revision para: Funcion para medir directorio completos

pd: ¿para que revivieron este post???
En línea

alone-in-the-chat


Desconectado Desconectado

Mensajes: 587


Ver Perfil
Re: medir tamaño de carpetas con php
« Respuesta #8 en: 31 Mayo 2007, 00:39 am »

tienes razon no vi la fecha jeje,
 buena pregunta kien revivio el post :D

Saludos

PD. disculpa tio pero pobre higado xD°°
En línea

Because maybe
You're gonna be the one that saves me
And after all
You're my wonderwall
d[n_n]b
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿ Se puede establecer tamaño de carpetas en Samba?
GNU/Linux
aldosn 4 11,045 Último mensaje 23 Septiembre 2010, 20:32 pm
por orvtech
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines