封装创建目录,读取目录含大小
在乎山水2019-03-03 16:52:15269<?php
function creat_folder($dirname){
if(file_exists($dirname)){
return '存在相同的文件!';
}
if(mkdir($dirname,0777,true)){
return '目录创建成功!';
}
return '目录创建失败!';
}
//echo creat_folder('css');
//读取目录
function read_dir($path){
$arr=[];
//打开目录
$dir=opendir($path);
//循环遍历目录下的文件或目录
while($item=readdir($dir)){//读取目录
if($item!='.' && $item !='..'){//去掉这种./../路径
if(is_file($path.'/'.$item)){//判断是否是文件,是就直接放进一个数组中
$arr['file'][]=$item;
}
if(is_dir($path.'/'.$item)){
$arr['dir'][]=$item;
}
}
}
closedir($dir);//关闭目录句柄
return $arr;
}
//var_dump(read_dir('text'));
//读取目录的大小
function dir_size($path){
$sum=0;
$GLOBALS[$sum];
$dir=opendir($path);
while($item=readdir($path)){
if($item!='.' && $item !='..'){//去掉这种./../路径
if(is_file($path.'/'.$item)){
$sum+=filesize($path.'/'.$item);
}
if(is_dir($path.'/'.$item)){
$func=__FUNCTION__;//获取本方法,获取到子目录里面的文件
$func($path.'/'.$item);
}
}
}
return $sum;
}
//echo trans_byte(dir_size('text'));