Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Katalogi/pliki
desavil
post
Post #1





Grupa: Zarejestrowani
Postów: 339
Pomógł: 3
Dołączył: 15.10.2008
Skąd: Internet

Ostrzeżenie: (0%)
-----


Cześć.
W jaki sposób mogę uzyskać listę plików i katalogów w danym katalogu?
Pytanie może brzmi dosyć dziwnie, ale wyjaśnię o co chodzi.

Mam dajmy na to katalog o nazwie (to jego zawartość ma być wyświetlana): dir
W tym katalogu mam pliki z rozszerzeniem .txt oraz inne katalogi i w nich również znajdują się pliki .txt oraz inne katalogi.
W jaki sposób mogę uzyskać listę tych katalogów oraz ich zawartość? Jeżeli chodzi o zawartość, chodzi mi o wyświetlanie tylko konkretnych typów plików.

Czyli np. skrypt wyświetli mi w ten sposób:
Cytat
dir/plik1.txt
dir/plik2.txt
dir/dir2/plik1.txt
dir/dir2/dir3/plik1.txt
dir/dir3/plik.txt
itd..

Ma wyświetlać tylko pliki określone w skrypcie formaty ich.

Pozdrawiam, i dziękuję za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mortus
post
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


To trzeba zapisywać listę plików do tablicy (trochę zabawy jest, bo trzeba pamiętać o rekurencji) i zwrócić tablicę.
  1. <?php
  2. function search_dir($path, $file_type) {
  3. $return = array();
  4. $files = glob($path.DIRECTORY_SEPARATOR.'*');
  5. foreach($files as $file) {
  6. if($file != '.' && $file != '..') {
  7. if(is_dir($file)) {
  8. $return = array_merge($return, search_dir($file, $file_type));
  9. }
  10. if(pathinfo($file, PATHINFO_EXTENSION) == $file_type) {
  11. $return[] = $file;
  12. }
  13. }
  14. }
  15. return $return;
  16. }
  17. // przykład
  18. $files = search_dir('tmp', 'txt');
  19. echo implode("<br />", $files);
  20. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Closed TopicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 14:45