(PHP 4 >= 4.3.0, PHP 5)
glob — 尋找與模式匹配的文件路徑
說明
array glob ( string$pattern
[, int $flags
= 0
] )
glob() 函數依照 libc glob() 函數使用的規則尋找所有與
pattern
匹配的文件路徑,類似于一般 shells
所用的規則一樣。不進行縮寫擴展或參數替代。
參數
pattern
The pattern. No tilde expansion or parameter substitution is done.
flags
有效標記有:
GLOB_MARK
- 在每個返回的項目中加一個斜線
GLOB_NOSORT
- 按照文件在目錄中出現的原始順序返回(不排序)
GLOB_NOCHECK
- 如果沒有文件匹配則返回用于搜索的模式
GLOB_NOESCAPE
- 反斜線不轉義元字符
GLOB_BRACE
- 擴充 {a,b,c} 來匹配 'a','b' 或 'c'
GLOB_ONLYDIR
- 僅返回與模式匹配的目錄項
GLOB_ERR
- 停止并讀取錯誤信息(比如說不可讀的目錄),默認的情況下忽略所有錯誤
返回值
返回一個包含有匹配文件/目錄的數組。如果出錯返回 FALSE
。
Note:
On some systems it is impossible to distinguish between empty match and an error.
更新日志
版本
說明
5.1.0
GLOB_ERR
was added
4.3.3
GLOB_ONLYDIR
在 Windows 或者其它不使用 GNU C 庫的系統上開始可用。
范例
Example #1 怎樣用 glob() 方便地替代 opendir() 和相關函數
<?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: 此函數在一些系統上還不能工作(例如一些舊的 Sun OS)。
Note:
GLOB_BRACE
在一些非 GNU 系統上無效,比如 Solaris。
參見
opendir() - 打開目錄句柄 readdir() - 從目錄句柄中讀取條目 closedir() - 關閉目錄句柄 fnmatch() - 用模式匹配文件名