PHP的文件操作
<?php //filetype() 獲取文件的類型 //獲取windows下的文件類型 echo filetype("D:\lamp\php5\php.ini")."<br>"; //輸出file 表示是一個普通文件 echo filetype("D:\lamp\php5")."<br>"; //輸出dir 表示是一個目錄 //is_file() 判斷給定的文件名是否是一個普通文件 //is_dir() 判斷給定的文件名是否是一個目錄 //file_exists() 檢查文件或目錄是否存在 //filesize() 取得文件的大小 //is_readable() 判斷給定文件名是否可讀 //is_writable() 判斷給定的文件名是否可寫 //is_executable() 判斷給定的文件名是否可執行 //filectime() 獲取文件的創建時間 //filemtime() 獲取文件的修改時間 //fileatime() 獲取文件的訪問時間 //stat() 獲取文件的大部分屬性值//clearstatcache() 清楚被PHP緩存的該文件信息 /聲明一個函數,通過傳入一個文件名獲取文件的大部分屬性 */ function getFilePro($fileName){ if(!file_exists($fileName)){ //如果提供的文件或目錄不存在,則直接退出函數 echo "目標文件不存在"."<br />"; return; } if(is_file($fileName)){ //判斷給定的文件是否是一個普通文件 echo $fileName."是一個普通文件<br />"; } if(is_dir($fileName)){ //判斷給定的文件是否是一個目錄 echo $fileName."是一個目錄<br />"; } echo "文件類型:".getFileType($fileName)."<br />"; echo "文件大小:".getFileSize(filesize($fileName))."<br />"; if(is_readable($fileName)){ //判斷文件是否可讀 echo "文件可讀<br />"; } if(is_writable($fileName)){ //判斷文件是否可寫 echo "文件可寫<br />"; } if(is_executable($fileName)){ //判斷文件是否可執行 echo "文件可執行"; } echo "文件的創建時間是:".date("Y-m-d H:i:s", filectime($fileName))."<br />"; echo "文件的最后更新時間是:".date("Y-m-d H:i:s", filemtime($fileName))."<br />"; echo "文件的最后打開時間是:".date("Y-m-d H:i:s", fileatime($fileName))."<br />"; } / 聲明一個函數,通過傳入一個文件名獲取文件的類型/ function getFileType($fileName){ switch(filetype($fileName)){ case "file": $type = "普通文件"; break; case "dir": $type = "目錄文件"; break; case "blokc": $type = "塊設備文件"; break; case "char": $type = "字符設備文件"; break; case "fifo": $type = "命名管道文件"; break; case "link": $type = "符號鏈接"; break; case "unkonwn": $type = "未知類型"; break; default: $type = "沒有檢測到類型"; } return $type; } /聲明一個函數,轉換文件的大小 */ function getFileSize($bytes){ if($bytes >= pow(2,40)){ //如果提供的字節數大于等于2的40次方,則條件成立 $return = round($bytes/pow(1024,4),2); //將字節轉換為同等的T的大小 $suffix = "TB"; }elseif($bytes >= pow(2,30)){ $return = round($bytes/pow(1024,3),2); //將字節轉換為同等的G的大小 $suffix = "GB"; }elseif($bytes >= pow(2,20)){ $return = round($bytes/pow(1024,2),2); //將字節轉換為同等的M的大小 $suffix = "MB"; }elseif($bytes >= pow(2,10)){ $return = round($bytes/pow(1024,1),2); //將字節轉換為同等的K的大小 $suffix = "KB"; }else{ $return = $bytes; //將字節轉換為同等的B的大小 $suffix = "B"; } return $return." ".$suffix; } getFilePro("D:\lamp\php5\php.ini"); $filepro=stat("D:/lamp/php5/php.ini"); //返回文件的大部分屬性 print_r($filepro); ?> </pre>