Funzione scandir

La funzione scandir restituisce un array contenente i nomi di file e directory dalla cartella specificata. Il primo parametro della funzione accetta il percorso della directory, e il secondo (opzionale) - l'ordine di ordinamento. Per impostazione predefinita, l'ordinamento viene eseguito in ordine alfabetico crescente.

Sintassi

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

Esempio

Otteniamo un elenco di file e cartelle nella directory corrente:

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

Risultato dell'esecuzione del codice:

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

Esempio

Otteniamo un elenco di file in ordine inverso:

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

Risultato dell'esecuzione del codice:

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

Esempio

Filtriamo gli elementi speciali '.' e '..' utilizzando la funzione array_diff:

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

Risultato dell'esecuzione del codice:

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

Vedi anche

  • la funzione glob,
    che cerca file tramite un modello
  • la funzione is_dir,
    che verifica una directory
  • la funzione readdir,
    che legge il contenuto di una directory