Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Listowanie plików i katalogów
Forum PHP.pl > Forum > Przedszkole
b_chmura
Witam
Czy ta funkcja nie powinna listować wszystkich plików i katalogów począwszy od katalogu w którym się znajduje skrypt?

  1. <?php
  2. function all_dir($katalog)
  3. {
  4. $dir = opendir($katalog);
  5.  
  6. while(false !== ($file = readdir($dir)))
  7. {
  8. if($file != '.' && $file != '..')
  9. {
  10. if(is_dir($file))
  11. {
  12. all_dir($file);
  13. }
  14. else
  15. {
  16. echo $file.'<br />';
  17. }
  18. }
  19. }
  20. }
  21. $katalog = './';
  22. all_dir($katalog);
  23. ?>

w każdym bądź razie nie robi tego. Mogę prosić jakieś wskazówki?
Cienki1980
Hmmmm na moje oko robi to co trzeba, po skopiowaniu kodu i uruchomieniu go upewniłem się że robi to co trzeba.

Dostałem listę katalogów/plików w folderze gdzie znajdował się skrypt z funkcją.
b_chmura
a u mnie nie...
na pewno listuje wszystkie wszystkie wszystkie pliki i katalogi (te w katalogach i katalogach i katalogach... też)?
Cienki1980
Ok masz racje nie listuje wszystkiego w głąb. Podejrzewam, że jest to problem ze ścieżką podawaną do open/read dir ... ale jestem zbyt zmachany żeby przerabiać funkcję.

Powinno pomóc dodawanie do katalogu poprzedniej ścieżki, tak żeby zawsze odczytywało z całą ścieżką podaną w pierwszym głównym wywołaniu funkcji.
b_chmura
ble
  1. <?php
  2. function all_dir($katalog) 
  3. {
  4. $dir  = opendir($katalog);
  5.  
  6. chdir($katalog);
  7.  
  8. while (false !== ($file = readdir($dir)))
  9. {
  10. if ($file != "." && $file != "..")
  11. {
  12. if (is_dir($file))
  13. {
  14. all_dir($file);
  15. echo '<b>'.$file.'</b><br />';
  16. } 
  17. else 
  18. {
  19. echo $file.'<br />';
  20. }
  21. }
  22. }
  23.  
  24. chdir("../");
  25.  
  26. }
  27.  
  28. $katalog = './';
  29. all_dir($katalog);
  30. ?>


udało sie. Teraz trzeba jeszcze ładne drzewko zrobić...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.