![]() |
AW: [PHP] Verzeichnisse rekursiv in ein Array schreiben
Damit hatte ich es auch erst probiert, bin damit aber nicht ganz klar gekommen.
|
AW: [PHP] Verzeichnisse rekursiv in ein Array schreiben
Zitat:
Greetz alcaeus |
AW: [PHP] Verzeichnisse rekursiv in ein Array schreiben
Den Beispielcode, den ich hatte, hat mir eine Art Verzeichnisbaum ausgegeben. Ich brauchte aber für jede Eben den vollen Pfad. Und das hab eich nicht hinbekommen. Des weiteren bin ich noch nicht so ganz durch die Klasse durchgestiegen, obwohl sie mir sehr praktisch erscheint. Ich habe mir für meine Homepage ein Upload Skript geschrieben, damit ich nicht immer den FTP-Client starten muss:
![]() |
AW: [PHP] Verzeichnisse rekursiv in ein Array schreiben
Moin,
den Dateinamen kriegst du mit $fileinfo->getFilename() raus, den Pfad mit $fileinfo->getPath() und den kompletten Pfad inkl. Dateiname mit $fileinfo->getPathname(). Hier mal ein Beispiel, welches auch gleich den root-Path rausschnibbelt:
Code:
Hinweis: code ist ungetestet und nicht in der IDE geschrieben....
/**
* Normalizes a pathname by cutting a root directory from the beginning * * @param string $pathname The path name to normalize * @param string $rootDirectory The root directory that will be cut from the pathname * * @return string The normalized pathname */ function normalizePathname ($pathname, $rootDirectory) { return preg_replace('#^' . preg_quote($rootDirectory, '#') .'#', '', $pathname); } /** * Returns a recursive directory listing * * @param string $directory The root directory for the listing * * @return array An array containing all children */ function getRecursiveDirectoryListing ($directory) { $children = array(); $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory), RecursiveIteratorIterator::SKIP_DOTS); foreach ($iterator as $child) { $children[] = normalizePathname($child->getPathname(), $directory); } array_multisort($children, SORT_ASC, $children); return $children; } Greetz alcaeus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz