Funkcija scandir

Funkcija scandir atgriež masīvu, kas satur failu un direktoriju nosaukumus no norādītās mapes. Pirmais parametrs ir ceļš uz direktoriju, bet otrais (neobligātais) - kārtošanas secība. Pēc noklusējuma kārtošana tiek veikta alfabētiskā secībā augošā veidā.

Sintakse

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

Piemērs

Iegūstam failu un mapju sarakstu pašreizējā direktorijā:

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

Koda izpildes rezultāts:

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

Piemērs

Iegūstam failu sarakstu apgrieztā secībā:

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

Koda izpildes rezultāts:

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

Piemērs

Atfiltrēsim servisa elementus '.' un '..' ar funkcijas array_diff palīdzību:

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

Koda izpildes rezultāts:

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

Skatiet arī

  • funkciju glob,
    kura meklē failus pēc veidnes
  • funkciju is_dir,
    kura pārbauda direktoriju
  • funkciju readdir,
    kura nolasa direktorijas saturu