Foros del Web » Programando para Internet » PHP »

Necesito mostrar la estructura y archivos de un directorio

Estas en el tema de Necesito mostrar la estructura y archivos de un directorio en el foro de PHP en Foros del Web. Hola! lo que necesito y no logre hasta ahora con lo que pude hacer y buscar es simplemente alguna rutina php que me muestre la ...
  #1 (permalink)  
Antiguo 22/03/2007, 13:06
 
Fecha de Ingreso: junio-2006
Mensajes: 80
Antigüedad: 17 años, 9 meses
Puntos: 0
Necesito mostrar la estructura y archivos de un directorio

Hola! lo que necesito y no logre hasta ahora con lo que pude hacer y buscar es simplemente alguna rutina php que me muestre la estructura y archivos de un directorio de la siguiente manera

DIRECTORIO
SUBDIRECTORIO
archivo
SUBDIRECTORIO
archivo
y asi....

Solo necesito que lo muestre, no necesito ni hipervinculos ni nada.

Es posible??
por que hasta ahora.. no pude

saludos y gracias de antemano
  #2 (permalink)  
Antiguo 22/03/2007, 14:17
 
Fecha de Ingreso: septiembre-2004
Mensajes: 66
Antigüedad: 19 años, 6 meses
Puntos: 0
Re: Necesito mostrar la estructura y archivos de un directorio

No lo he probado pero eso es lo que pude encontrar suerte

<?php
main();

function main(){
//Set Variables
$testDirName = "test_dir";
$fileListArray = array();
$dirListArray = array();

$aDirectory = new DirReader($testDirName);

// Store File List in Array
$fileListArray = $aDirectory->getFileList();
$dirListArray = $aDirectory->getDirList();

echo "<html><body>\n";
echo "<pre>\n";

echo "Reading Directory: ". $aDirectory->getDirPath() ."\n";
echo "Current Directory: ". getcwd() ."\n";

echo "-- Files in Directory --\n";
foreach ($fileListArray as $filename) {
echo "File: $filename\n";
}

echo "\n-- Sub Directories --\n";
foreach ($dirListArray as $filename){
echo "Sub dir: $filename\n";
}
echo "</pre></body></html>\n";
}

class DirReader{
private $dh; # Directory Handle
private $basedir; # Base Directory passed to the object
private $fileNameArray=array();
private $dirNameArray=array();
function __construct($dirname){
$this->basedir = $dirname;
$this->dh = dir($dirname) or die($php_errormsg);
$this->parseDirectory();
}

function parseDirectory(){
$filename = "";
while (false !== ($filename = $this->dh->read())){
$fullpath = $this->basedir . '/' . $filename;
if (is_file($fullpath)){
array_push($this->fileNameArray, $filename);
}else{
array_push($this->dirNameArray, $filename);
}
}
}


// Get all the files in the directory
function getFileList(){
return $this->fileNameArray;
}
// Get all the sub directories in the directory
function getDirList(){
return $this->dirNameArray;
}

function getDirPath(){
return $this->dh->path;
}
}
?>
  #3 (permalink)  
Antiguo 22/03/2007, 14:18
 
Fecha de Ingreso: septiembre-2004
Mensajes: 66
Antigüedad: 19 años, 6 meses
Puntos: 0
Re: Necesito mostrar la estructura y archivos de un directorio

$testDirName = "test_dir";

test_dir es el directorio que quieres leer asi que cambialo a tu gusto
  #4 (permalink)  
Antiguo 22/03/2007, 14:41
 
Fecha de Ingreso: junio-2006
Mensajes: 80
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: Necesito mostrar la estructura y archivos de un directorio

Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/mc000603/public_html/testing/jsalbum/juan7.php on line 35

Por que me tira este error??
  #5 (permalink)  
Antiguo 22/03/2007, 16:06
 
Fecha de Ingreso: septiembre-2004
Mensajes: 66
Antigüedad: 19 años, 6 meses
Puntos: 0
Re: Necesito mostrar la estructura y archivos de un directorio

a mi me funciona perfecto cambie mi directorio a c:\Book
en la sig linea $testDirName = "c:\Book";
Y esto fue lo que me dio de resultado.

Reading Directory: c:\Book
Current Directory: C:\Archivos de programa\VertrigoServ\www\
-- Files in Directory --
File: Book.7z

-- Sub Directories --
Sub dir: .
Sub dir: ..


Se me olvidaba decirte que estoy usando PHP5 probablemente estas usando una versión más vieja

Última edición por elkronos; 22/03/2007 a las 16:06 Razón: me comi una palabra
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 12:12.