/ / Wypisywanie plików w PHP (TYLKO plikach) jako linków ze wszystkich podkatalogów katalogu - php

Wypisywanie plików w PHP (TYLKO pliki) jako odnośniki ze wszystkich podkatalogów katalogu - php

Mam witrynę ftp, która obsługuje kilka plików. Każdy plik jest sam w swoim folderze w katalogu głównym (przesyłanie), ze względu na ograniczenia wprowadzone przez oprogramowanie do pobierania, którego używamy (każdy plik musi mieć unikalną ścieżkę do pliku, a nazwa pliku musi być modpack.zip (nie bądź dowolną odmianą tej nazwy, musi mieć tę dokładną nazwę, dlatego każda wersja jest w swoim własnym podfolderze)

Muszę znaleźć sposób, aby wyświetlić listę wszystkich plikówwszystkie podkatalogi głównego folderu przesyłania w tabeli, a także listę, jak duży jest każdy plik. Każdy plik musi mieć link do niego, a foldery nie muszą być wyświetlane.

Kod, który mam do tej pory jako punkt wyjścia, to:

<div id="list"><table>
<tr><td align="center">Modpack List</td></tr>
<?php

$dir_open = opendir("uploads/");

while(false !== ($filename = readdir($dir_open))){
$bytes = filesize($_SERVER["DOCUMENT_ROOT"]."/uploads/".$filename."");
if($filename != "." && $filename != ".."){
echo "<tr><td><a href="/uploads/".$filename."">".$filename."</a> - ".bytesToSize($bytes)."</td></tr>";
}
}

closedir($dir_open);

?>
</table>
</div>

Próbowałem użyć readdir () i scandir (), alezarówno lista plików, jak i podfolderów, których nie chcę, a bieżąca konfiguracja wyświetla tylko pliki i foldery znajdujące się bezpośrednio pod / uploads i nie będzie wyświetlać żadnych plików w podfolderach, chyba że kliknę folder, który zajmuje na stronę FTP tego folderu.

Próbowałem kilku opublikowanych rozwiązań, które widziałemtutaj, jak również na innych stronach, ale żadna z nich nie zrobiła tego, czego potrzebowałem, i nie potrafię wymyślić, jak sprawić, by pomijał foldery jako linki i tylko wymieniał pliki.

Odpowiedzi:

0 dla odpowiedzi № 1

Spróbuj użyć glob ():

<?php
foreach(glob("path-to/UPLOAD_FOLDER/*") as $subDirectory) {
foreach(glob($subDirectory"./*") as $file) {

// do what you want with file here... example:
$file_list .= $file."<br>";
}
}
echo $file_list;
?>