Funkce scandir

Funkce scandir vrací pole obsahující názvy souborů a adresářů ze zadané složky. První parametr funkce přijímá cestu k adresáři a druhý (volitelný) - pořadí řazení. Výchozí nastavení řadí vzestupně podle abecedy.

Syntaxe

phpscandir(string $directory, int $sorting_order = SCANDIR_SORT_ASCENDING): array

Příklad

Získáme seznam souborů a složek v aktuálním adresáři:

php<?php
  $res = scandir('.');
  print_r($res);
?>

Výsledek provedení kódu:

php['.', '..', 'file1.txt', 'file2.txt', 'folder']

Příklad

Získáme seznam souborů v obráceném pořadí:

php<?php
  $res = scandir('.', SCANDIR_SORT_DESCENDING);
  print_r($res);
?>

Výsledek provedení kódu:

php['folder', 'file2.txt', 'file1.txt', '..', '.']

Příklad

Odfiltrujeme služební prvky '.' a '..' pomocí funkce array_diff:

php<?php
  $res = array_diff(scandir('.'), ['.', '..']);
  print_r($res);
?>

Výsledek provedení kódu:

php['file1.txt', 'file2.txt', 'folder']

Viz také

  • funkci glob,
    která hledá soubory podle vzoru
  • funkci is_dir,
    která kontroluje adresář
  • funkci readdir,
    která čte obsah adresáře