Estoy buscando un script PHP que recorra todos los archivos de un directorio para poder hacer cosas con el nombre del archivo, como formatear, imprimir o agregarlo a un enlace. Me gustaría poder ordenar los archivos por nombre, tipo o por fecha de creación / agregado / modificación. (Piense en el elegante directorio "index"). También me gustaría poder agregar exclusiones a la lista de archivos, como el script en sí u otros archivos del "sistema". (Al igual que los .
y ..
"directorios".)
Siendo que me gustaría poder modificar el script, estoy más interesado en mirar los documentos PHP y aprender a escribir uno yo mismo. Dicho esto, si hay scripts, tutoriales y demás, por favor hágamelo saber.
Respuestas:
Puede usar DirectoryIterator . Ejemplo del manual de php:
fuente
dirname()
función anterior obtendrá la carpeta principal de cualquier ruta que coloque allí. En mi caso, supuse que dirname era un contenedor para el nombre / ruta del directorio, por lo que no era necesario./home/examples/banana.jpg
uso$fileinfo->getPathname()
Si no tiene acceso a la clase DirectoryIterator intente esto:
fuente
Usa la
scandir()
función:fuente
También puedes hacer uso de
FilesystemIterator
. Requiere aún menos código entoncesDirectoryIterator
, y automáticamente elimina.
y..
.Enlace: http://php.net/manual/en/class.filesystemiterator.php
fuente
Puede usar este código para recorrer un directorio de forma recursiva :
fuente
glob () tiene disposiciones para ordenar y hacer coincidir patrones. Como el valor de retorno es una matriz, puede hacer casi todo lo que necesite.
fuente
Para completar (ya que esta parece ser una página de alto tráfico), no olvidemos la buena
dir()
función anterior :fuente