glob

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

globFind pathnames matching a pattern

Descrierea

glob ( string $pattern [, int $flags = 0 ] ) : array

The glob() function searches for all the pathnames matching pattern according to the rules used by the libc glob() function, which is similar to the rules used by common shells.

Parametri

pattern

The pattern. No tilde expansion or parameter substitution is done.

Special characters:

  • * - Matches zero of more characters.
  • ? - Matches exactly one character (any character).
  • [...] - Matches one character from a group of characters. If the first character is !, matches any character not in the group.
  • ... - Matches all the subdirectories, recursively.
  • \ - Escapes the following character, except when the GLOB_NOESCAPE flag is used.

flags

Valid flags:

  • GLOB_MARK - Adds a slash to each directory returned
  • GLOB_NOSORT - Return files as they appear in the directory (no sorting). When this flag is not used, the pathnames are sorted alphabetically
  • GLOB_NOCHECK - Return the search pattern if no files matching it were found
  • GLOB_NOESCAPE - Backslashes do not quote metacharacters
  • GLOB_BRACE - Expands {a,b,c} to match 'a', 'b', or 'c'
  • GLOB_ONLYDIR - Return only directory entries which match the pattern
  • GLOB_ERR - Stop on read errors (like unreadable directories), by default errors are ignored.

Valorile întoarse

Returns an array containing the matched files/directories, an empty array if no file matched or FALSE on error.

Notă:

On some systems it is impossible to distinguish between empty match and an error.

Istoricul schimbărilor

Versiune Descriere
5.1.0 GLOB_ERR was added

Exemple

Example #1 Convenient way how glob() can replace opendir() and friends.

<?php
foreach (glob("*.txt") as $filename) {
    echo 
"$filename size " filesize($filename) . "\n";
}
?>

Exemplul de mai sus va afișa ceva similar cu:

funclist.txt size 44686
funcsummary.txt size 267625
quickref.txt size 137820

Note

Notă: Această funcție nu va lucra cu fișiere la distanță, deoarece fișierul care trebuie să fie examinat trebuie să fie accesibil prin intermediul sistemului de fișiere al serverului.

Notă: This function isn't available on some systems (e.g. old Sun OS).

Notă: The GLOB_BRACE flag is not available on some non GNU systems, like Solaris.

A se vedea și