Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Listowanie katalogow
Forum PHP.pl > Forum > PHP
Vomit
Tak wyglada moje drzewo katalogow:
Kod
code
- asd (folder)
-- assdd (folder)
-- 123.txt (plik)
- srotdl (folder)
- 1.txt (plik)


Napisalem taka klase:

  1. <?php
  2. class ListDirectories
  3. {
  4. public $dirs = array();
  5. public $files = array();
  6.  
  7. public function __construct( $dir )
  8. {
  9. $this->dirs[] = $dir;
  10.  
  11. $this->Lis();
  12. }
  13.  
  14. private function Lis()
  15. {
  16. foreach( $this->dirs as $dir )
  17. {
  18. foreach( glob($dir . '*') as $dirs )
  19. {
  20. if ( is_dir($dirs . '/') )
  21. {
  22. if ( !in_array($dirs . '/',$this->dirs) )
  23. {
  24. $this->dirs[] = $dirs . '/';
  25. }
  26. }
  27. elseif ( is_file($dirs) )
  28. {
  29. if ( !in_array($dirs,$this->files) )
  30. {
  31. $this->files[] = $dirs;
  32. }
  33. }
  34. }
  35. }
  36. }
  37.  
  38.  
  39. }
  40.  
  41. $dir = new ListDirectories('code/');
  42. echo '<pre>';
  43. print_r($dir->dirs);
  44. print_r($dir->files);
  45. ?>


I zwraca mi ona jedynie:
Kod
Array
(
    [0] => code/
    [1] => code/asd/
    [2] => code/srotdl/
)
Array
(
    [0] => code/1.txt
)
mike
A nie lepiej zastosować SPL, przecież po to została stworzona:
  1. <?php
  2.  
  3. $objDir = new RecursiveIteratorIterator( new RecursiveDirectoryIterator( 'code/' ), true );
  4.  
  5. foreach( $objDir => $objFile )
  6. {
  7. echo $objFile . "<br />\n";
  8. }
  9.  
  10. ?>


Prawda, że przyjemniej :?:
Vomit
Prawda! Nawet nie wiedziałem o istnieniu tej biblioteki winksmiley.jpg Thx
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.