Foros del Web » Programando para Internet » PHP »

Fecha de carpetas en PHP

Estas en el tema de Fecha de carpetas en PHP en el foro de PHP en Foros del Web. Hola, he recogido el codigo fuente de una el index.oho que instala el wampserver en el que te dice las carpetas que tienes en directorio ...
  #1 (permalink)  
Antiguo 05/09/2004, 21:05
Avatar de Malocado  
Fecha de Ingreso: septiembre-2004
Mensajes: 24
Antigüedad: 13 años, 3 meses
Puntos: 0
Fecha de carpetas en PHP

Hola, he recogido el codigo fuente de una el index.oho que instala el wampserver en el que te dice las carpetas que tienes en directorio raiz del servidor, bueno pues e aislado el codio de forma que me ha quedado así:

<?
$list_ignore = array ('.','..','phpMyAdmin','index');

$handle=opendir(".");
$i = 0;
while ($file = readdir($handle))
{
if (is_dir($file) && !in_array($file,$list_ignore))
{
$tab[$i]=$file;
$i++;
}
}
closedir($handle);

if ($i)
foreach ($tab as $rep)
{
echo ('<tr><td width="100%"><span class=Estilo2><a target="_blank" href="'.$rep.'">'.$rep.'</a></span><span class=Estilo1> -> </span><a target="_blank" href="c:/Servidor/web/'.$rep.' "><span class=Estilo2>Abrir carpeta</span></a></td></tr>');
}
else
echo "<tr><td><span class='Estilo2'>No hay carpetas</span></td></tr>";

?>

Lo que quiero acer es que ademas de eso me las organice por nombre (A-Z) y que me ponga en que fecha se crearon. He visto que en un modulo del PHP para administar ficheros lo ace y e intentado coger el codigo y no se hacerlo ya que soy novato en esto del PHP, tambien e estado mirando por las webs de programación pero no encuentro nada, espero esto se pueda hacer.

Gracias de antemano.
  #2 (permalink)  
Antiguo 06/09/2004, 07:35
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Si te fijas bien .. $tab es un array el cual lo lees con el bucle foreach() subsiguiente, si deseas ordenar ese listado de archivos, ordena ese array antes de atacar tu bucle que lo presenta.

Pudes usar funciones como:
asort() o similares

más info:
http://www.php.net/array

Y para el tema de obtener la fecha de creación del archivo .. puedes usar:
filemtime() o filectime()

más info:
http://www.php.net/manual/es/ref.filesystem.php

Un saludo,
  #3 (permalink)  
Antiguo 06/09/2004, 13:22
Avatar de Malocado  
Fecha de Ingreso: septiembre-2004
Mensajes: 24
Antigüedad: 13 años, 3 meses
Puntos: 0
Gracias Cluster por la información lo de la fecha conseguí ponerlo y justo como queria :D, en cambio lo de el orden de carpetas no me entero de nada si pudieses especificarme algo mas del codigo o ponerme uno de ejemplo te lo agradeceria
  #4 (permalink)  
Antiguo 06/09/2004, 13:51
Avatar de Malocado  
Fecha de Ingreso: septiembre-2004
Mensajes: 24
Antigüedad: 13 años, 3 meses
Puntos: 0
Ya ta

Ya está, ya lo encontré en este mismo foro. Gracias por la ayuda.

Aquí dejo el codigo tal y como lo quería:

Código PHP:
<style type="text/css">
.Estilo1 {font-size: xx-small; font-weight: bold; font-family: Verdana, Arial, Helvetica, sans-serif;}
.Estilo2 {font-size: xx-small; font-family: Verdana, Arial, Helvetica, sans-serif;}
.Estilo3 {font-size: xx-small; font-weight: bold; font-family: Verdana, Arial, Helvetica, sans-serif; color: #006699; }
A:link {COLOR: #006699; TEXT-DECORATION: none}
A:active {COLOR: #006699; TEXT-DECORATION: none}
A:visited {COLOR: #006699; TEXT-DECORATION: none}
A:hover {COLOR: #ff6600; TEXT-DECORATION: none}
</style>
<table width="100%"  border="0" cellpadding="0" cellspacing="0">
<?
// Función para mostrar directorios
    
$list_ignore = array ('.','..','phpMyAdmin','index');
    
$handle=opendir(".");
    
$i 0;
    while (
$file readdir($handle)) 
    {
        if (
is_dir($file) && !in_array($file,$list_ignore))
        {    
            
$tab[$i]=$file;
            
$i++;
        }
    }
    
closedir($handle);
?>
<tr bgcolor="#D2D2D2">
<td width="25%"><span class="Estilo1"><b>Nombre</b></span></div></td>
<td width="25%"><span class="Estilo1"><b>Carpeta</b></span></div></td>
<td width="25%"><span class="Estilo1"><b>Hora</b></span></div></td>
<td width="25%"><span class="Estilo1"><b>Fecha de creación</b></span></div></td>
</tr>
<tr>
<td>
<?
// Función para abrir el enlace
sort($tab);
if (
$i)
    foreach (
$tab as $rep)
    {
        echo (
'<span class=Estilo2><a target="_blank" href="'.$rep.'">*'.$rep.'</a></span><br>');
    }
else
echo 
"<span class='Estilo2'>No hay carpetas</span>";
?>
</td>
<td>
<?
// Función para Explorar la carpeta
if ($i)
    foreach (
$tab as $rep)
    {
echo (
'<a target="_blank" href="c:/Servidor/web/'.$rep.' "><span class=Estilo2>*Explorar</span></a><br>');
    }
?>
</td>
<td>
<span class=Estilo2>
<?
// Función de Hora de creación
if ($i)
    foreach (
$tab as $rep)
    {
    echo 
""date("*H:i:s",    filemtime ($rep));
    echo (
'<br>');
    }
?></span>
</td>
<td>
<span class=Estilo2>
<?
// Función de Fecha de creación
if ($i)
    foreach (
$tab as $rep)
    {
    echo 
""date("*d-m-Y",    filemtime ($rep));
    echo (
'<br>');
    }
?></span>
</td>
</tr>
</table>
Espero que esto también le sirva a más gente.

Saludos
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 04:03.