轉載:http://www.php100.com/html/php/hanshu/2013/0905/4370.html
1. php檔案夾操作函數
string basename ( string path [, string suffix] ) 給出一個包含有指向一個檔案的全路徑的字串,本函數返回基本的檔案名稱。如果檔案名稱是以 suffix 結束的,那這一部分也會被去掉。
在 Windows 中,斜線(/)和反斜線()都可以用作目錄分隔字元。在其它環境下是斜線(/)。
例子:
<?php $path = "/testweb/home.php"; //顯示帶有副檔名的檔案名稱 echo basename($path); //顯示不帶有副檔名的檔案名稱 echo basename($path,".php"); ?> 輸出:
home.php home
string dirname ( string path )
給出一個包含有指向一個檔案的全路徑的字串,本函數返回去掉檔案名稱後的目錄名。
在 Windows 中,斜線(/)和反斜線()都可以用作目錄分隔字元。在其它環境下是斜線(/)。
array pathinfo ( string path [, int options] )
pathinfo() 返回一個聯合數組包含有 path 的資訊。包括以下的數組單元:dirname,basename 和 extension。
可以通過參數 options 指定要返回哪些單元。它們包括:PATHINFO_DIRNAME,PATHINFO_BASENAME 和 PATHINFO_EXTENSION。預設是返回全部的單元。
array scandir ( string $directory [, int $sorting_order [, resource $context ]] ) scandir, 列出指定路徑中的檔案和目錄,返回一個 array,包含有 directory 中的檔案和目錄。成功則返回包含有檔案名稱的 array,如果失敗則返回 FALSE。如果 directory 不是個目錄,則返回布爾值 FALSE 並產生一條 E_WARNING 級的錯誤。
例子:
<?php $dir = '/tmp'; $files1 = scandir($dir); $files2 = scandir($dir, 1); print_r($files1); print_r($files2); ?> 輸出:
Array ( [0] => . [1] => .. [2] => bar.php [3] => foo.txt [4] => somedir ) Array ( [0] => somedir [1] => foo.txt [2] => bar.php [3] => .. [4] => . )
string realpath ( string path )
realpath() 擴充所有的符號串連並且處理輸入的 path 中的 ‘/./’, ‘/../’ 以及多餘的 ‘/’ 並返回正常化後的絕對路徑名。返回的路徑中沒有符號串連,’/./’ 或 ‘/../’ 成分。
realpath() 失敗時返回 FALSE,比如說檔案不存在的話。在 BSD 系統上,如果僅僅是 path 不存在的話,PHP 並不會像其它系統那樣返回 FALSE。
bool is_dir ( string filename )
如果檔案名稱存在並且為目錄則返回 TRUE。如果 filename 是一個相對路徑,則按照當前工作目錄檢查其相對路徑。
注: 本函數的結果會被緩衝。更多資訊參見 clearstatcache()。
resource opendir ( string path [, resource context] )
開啟一個目錄控制代碼,可用於之後的 closedir(),readdir() 和 rewinddir() 調用中。
string readdir ( resource dir_handle ) 返回目錄中下一個檔案的檔案名稱。檔案名稱以在檔案系統中的排序返回。
void closedir ( resource dir_handle ) 關閉由 dir_handle 指定的目錄流。流必須之前被 opendir() 所開啟。
void rewinddir ( resource dir_handle ) 將 dir_handle 指定的目錄流重設到目錄的開頭。
array glob ( string pattern [, int flags] ) glob() 函數依照 libc glob() 函數使用的規則尋找所有與 pattern 匹配的檔案路徑,類似於一般 sh