Forum und email

glob

(PHP 4 >= 4.3.0, PHP 5)

glob — Find pathnames matching a pattern

說明

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

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.

參數

pattern

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

flags

Valid flags:

  • GLOB_MARK - Adds a slash to each item returned
  • GLOB_NOSORT - Return files as they appear in the directory (no sorting)
  • 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.

Return值

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

更新日誌

版本 說明
5.1.0 GLOB_ERR was added
4.3.3 GLOB_ONLYDIR became available on Windows and other systems not using the GNU C library

範例

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

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

上例的輸出類似於:

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

註釋

Note: 本函式不能作用於遠端檔案,被檢查的檔案必須可經由伺服器的檔案系統存取。

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

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