跟我學習php檔案和目錄常用函數-上篇

來源:互聯網
上載者:User
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 )

擷取檔案的相關資訊

  • 返迴文件資訊說明
數字下標 關聯鍵名 解釋
0 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 '
 ';//迴圈擷取目錄下的檔案while($filename = readdir($dir_handle)){ $filepath = $path.'/'.$filename;//檔案的具體路徑 //只擷取檔案類型 if( ($filetype = filetype($filepath) ) == 'file'){ $filesize = filesize($filepath); //檔案大小 $filemtime = date("Y/n/t", filemtime($filepath) ); //最後修改時間 //以表格形式輸出 echo "
    "; }}echo '
  
檔案名稱 類型 大小 修改時間
{$filename} {$filetype} {$filesize} {$filemtime}
';
  • 運行結果

2016-06-08_202245.png

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.