PHP文件管理(1)
目錄
1.文件系統概述
- 文件類型
- 文件屬性
2.目錄基本操作
- 解析目錄路徑
- 遍歷目錄
- 統計目錄大小
- 建立和刪除目錄
- 複製目錄
3.文件的基本操作
- 文件打開和關閉
- 寫入文件
- 讀取文件內容
- 訪問遠程文件
- 移動文件指針
- 文件的鎖定機制
- 文件操作函數
4.文件的上傳和下載
- 上傳文件
- 下載文件
1.文件系統概述
1.1 文件類型
文件類型 | 描述 |
---|---|
block | 塊設備文件 |
char | 字符設備 |
dir | 目錄設備 |
file | 普通文件類型 |
fifo | 命令管道 |
link | 鏈接 |
unknown | 未知文件 |
filetype():判斷文件類型
1.2 文件屬性
函數名 | 作用 | 參數 | 返回值 |
---|---|---|---|
file_exits() | 文件目錄是否存在 | filename | true;false |
filesize() | 文件大小 | filename | true;false |
is_readable() | 可讀 | filename | true |
is_writable() | 可寫 | filename | true |
is_excutable() | 可執行 | filename | true |
filetime() | 文件創建時間 | filename | 時間戳格式 |
filemtime() | 文件修改時間 | filename | 時間戳格式 |
fileatime() | 文件訪問時間 | filename | 時間戳格式 |
stat() | 大部分文件屬性 | filename | 數組 |
clearstatcache():清除被php文件緩衝的信息
1.2 獲取文件大小的函數
function getFileSize($bytes){
if($bytes>=pow(2,40)){
$return=round($bytes/pow(1024,4),2);
$suffix="TB";
}
if($bytes>=pow(2,30)){
$return=round($bytes/pow(1024,3),2);
$suffix="GB";
}
if($bytes>=pow(2,20)){
$return=round($bytes/pow(1024,2),2);
$suffix="MB";
}
if($bytes>=pow(2,10)){
$return=round($bytes/pow(1024,1),2);
$suffix="KB";
}
else{
$return=$bytes;
$suffix="B";
}
return $return." ".$suffix;
}
- 打印文件的13元素之後數組
<?php
$filePro=stat("file.php");
print_r(array_slice($filePro,13));
?>
除了stat(),還有lstat(),fstat()函數獲取相應的文件屬性;