摘要:<?php require 'dir_fun.php'; //創(chuàng)建一個為demoDir的目錄文件 echo create_Dir('deomDir'),'<br>';// 查詢目錄的子文件、子目錄的文件大小 &nbs
<?php
require 'dir_fun.php';
//創(chuàng)建一個為demoDir的目錄文件
echo create_Dir('deomDir'),'<br>';
// 查詢目錄的子文件、子目錄的文件大小
echo '<pre>';
print_r(read_Dir('text'));
<!--dir_fun.php--> <?php /** * 對目錄創(chuàng)建 * @param $dirName //需要創(chuàng)建的目錄名稱 * @return string //提示信息 */ function create_Dir($dirName) { //判斷是否存在相同文件或目錄 if (file_exists($dirName)){ return '存在相同文件'; } //創(chuàng)建目錄并判斷 if(mkdir($dirName,0777,true)){ return '目錄創(chuàng)建成功'; } return '目錄創(chuàng)建失敗'; } /** * 對目錄文件進(jìn)行讀操作 * @param $path //需要讀取的目錄文件 * @return array //提示信息 */ function read_Dir($path) { $arr = []; //判斷路徑是否有效 if (!file_exists($path)){ $arr[] ="無效路徑"; return $arr; } global $sum; $dir = opendir($path); //對目錄文件進(jìn)行循環(huán)遍歷 while($item = readdir($dir)) { // 過濾"." 和 ".."目錄 if ($item != "." && $item != ".."){ // 如果為文件時進(jìn)行計(jì)錄 if (is_file($path . "/" . $item)){ $arr['file'][]=$item .'-------文件大小為:--------'.trans_Byte(filesize($path . "/" . $item)); $sum += filesize($path . "/" . $item); } // 如果為目錄時進(jìn)行計(jì)錄 if (is_dir($path . "/" .$item)){ $arr['dir'][]=$item .'--------目錄大小為:--------'.trans_Byte($sum); } } } closedir($dir); return $arr; } /** * 對文件大小后定義單位 * @param $byte //待轉(zhuǎn)換的字節(jié)數(shù) * @param int $precision //四舍五入默認(rèn)為2位 * @return string //返回轉(zhuǎn)換后的數(shù) */ function trans_Byte($byte,$precision=2) { $KB =1024; $MB = 1024*$KB; $GB = 1024*$MB; $TB = 1024*$GB; //round 四舍五入,保留精度。 if($byte <$KB){ return $byte .'B'; }elseif($byte<$MB){ return round($byte/$KB,$precision).'KB'; }elseif($byte<$GB){ return round($byte/$MB,$precision).'MB'; }elseif($byte<$TB){ return round($byte/$GB,$precision).'GB'; }else{ return round($byte/$TB,$precision).'TB'; } }
批改老師:查無此人批改時間:2019-04-18 10:08:18
老師總結(jié):完成的不錯。學(xué)習(xí)后,要知道用在哪里。繼續(xù)加油。