1.编写文件操作类(识别文件夹中的文件和目录,并且剔除了..和.目录)
class File{
function fileDirectory($path){
$item=scandir($path);
foreach ($item as $v) {
if($v!='.'&&$v!='..'){
if(is_file($path."/".$v)){
$arr['file'][]=$v;
}
if(is_dir($path."/".$v)){
$arr['dir'][]=$v;
}
}
}
return $arr;
}
}
scandir:返回arr包括路径的文件和目录
is_file:判断参数是否为文件
id_dir:判断文件是否为目录
文件类型filetype(
p)文件大小filesize(
p)
修改时间date(‘Y-m-d H:i:s’,filemtime($p));
出现编码问题
这里我们的页面编码是utf8的,php返回的数据出现乱码,经过排查发现,scandir的返回数组编码格式为gbk,然后我们将scandir输出的乱码部分(name)转换成utf8既可以解决。
mb_convert_encoding($v,’utf-8’,’gb2312’)
字节转换:
function transByte($size){
$unit=array('B','KB','MB','GB','TB');
$lev=0;
while(floor($size/1024)!=0){
$lev++;
$size/=1024;
}
return round($size,2).$unit[$lev];
}
使用cikonss.css(响应式css icon)bootstrap中文网有下载
创建文件
一个表单接收文件名等内容,post给处理文件
function createfile($filename){
$pattern="/[\\\:?|<>*\/\"]/";
if(!preg_match($pattern, basename($filename))){
if(!file_exists($filename)){
if(touch($filename)){
return "创建文件成功";
}else{
return "创建文件失败";
}
}else{
return "文件名已存在,请重新命名";
}
}else{
return "文件名不能包含特殊符号";
}
}
正则:preg_match()
basename:获得路径中的文件名;
file_exists()判断文件是否已经存在
touch()修改文件访问时间,若文件不存在则创建文件
查看文件内容:
file_get_contents(文件名)
highlight_file($filename,true)–php代码高亮