天天看點

跟我學習php檔案和目錄常用函數-上篇簡單綜合執行個體

跟我學習php檔案和目錄常用函數-上篇簡單綜合執行個體
下篇

1> bool file_exists(string$filename)

檢查檔案或目錄是否存在

2> int filesize(string$filename)

取得指定檔案的大小

3> string filetype(string$filename)

傳回檔案的類型。
  • 傳回值, 可能的值有 fifo,char,dir,block,link,file 和 unknown。
  • 對于windows有'file'、'dir'、或 'unknown'

4> array stat(string$filename)

擷取檔案的相關資訊
  • 傳回檔案資訊說明
數字下标 關聯鍵名 解釋
dev 裝置名
1 ino 号碼
2 mode inode保護模式
3 nlink 被連接配接數目
4 uid 所有者的使用者id
5 gid 所有者的組id
6 rdev 裝置類型,如果是inode裝置的話
7 size 檔案大小的位元組數
8 atime 上次通路時間(unix時間戳)
9 mtime 上次修改時間(unix時間戳)
10 ctime 上次改變時間(unix時間戳)
11 blksize 檔案系統IO的塊大小
12 blocks 所占據塊的數目

5> string basename(string$path[,string$suffix] )

從路徑中擷取檔案的基本檔案名
  • $suffix, 如果你寫了檔案名的字尾傳回回來的檔案名不包含字尾
$path = 'f/a.txt';
echo basename($path,'.txt');//輸出: a
           

6> string dirname(string$path )

傳回字元串中的檔案夾路徑
$path = 'f1/f2/a.txt';
echo dirname($path);//輸出: f1/f2
           

7> mixed pathinfo(string$path[,int$options= PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION PATHINFO_FILENAME] )

傳回路徑的關聯數組或指定的資訊
  • $options, 指定輸出路徑資訊
  • 關聯數組資訊
$img_info = pathinfo('1.jpg');
print_r( $img_info );
/*
輸出:
Array
(
 [dirname] => .  目錄路徑,點表示目前路徑
 [basename] => 1.jpg 帶擴充名檔案名
 [extension] => jpg 擴充名
 [filename] => 1 檔案名
)
*/
           

8> resource opendir(string$path[,resource$context] )

打開一個目錄句柄,可用于之後的 closedir() readdir() rewinddir() 調用中。

9> string readdir([resource$dir_handle] )

傳回目錄中下一個檔案的檔案名。檔案名以在檔案系統中的排序傳回。
  • $dir_handle, 使用opendir函數傳回的目錄句柄

10> int filemtime(string$filename )

擷取檔案最後修改時間戳

簡單綜合執行個體

  • 輸出指定目錄下的所有檔案資訊
header('content-type: text/html;charset=utf-8;');
$path = 'folder'; //目錄路徑
$dir_handle = opendir($path);//打開目錄
echo '<table border="1"> <tr>
<th>檔案名</th><th>類型</th><th>大小</th><th>修改時間</th>
</tr>';
//循環擷取目錄下的檔案
while($filename = readdir($dir_handle)){  
    $filepath = $path.'/'.$filename;//檔案的具體路徑   
    //隻擷取檔案類型   
    if( ($filetype = filetype($filepath) ) == 'file'){  
        $filesize = filesize($filepath); //檔案大小
        $filemtime = date("Y/n/t", filemtime($filepath) ); //最後修改時間      
    //以表格形式輸出 
    echo "<tr>
        <td>{$filename}</td><td>{$filetype}</td><td>{$filesize}</td><td>{$filemtime}</td>       
            </tr> ";    
    }
}
echo '</table>';
           
  • 運作結果
跟我學習php檔案和目錄常用函數-上篇簡單綜合執行個體

2016-06-08_202245.png