<?php
$dir= '/home/';
$dir = rtrim($dir,'/');
$dir_data = getDir($dir);//得到文件详细信息,一维数组
$dir_data2 = getDir2($dir);//得到文件名,多维数组
var_dump($dir_data);
var_dump($dir_data2);
function getDir2($dir){
if(!is_dir($dir)) return false;
$data[$dir] = scandir($dir);
foreach($data[$dir] as $k => $v){
if($v!='.' && $v!='..'){
$path = $dir.'/'.$v;
if(is_dir($path)){
$data[$k] = getDir2($path);
}
}
}
return $data;
}
function searchDir($path, &$data)
{
if (is_dir($path)) {
$dp = dir($path);
while ($file = $dp->read()) {
if ($file != '.' && $file != '..') {
searchDir($path . '/' . $file, $data);
}
}
$dp->close();
}
if (is_file($path)) {
$md5 = md5_file($path);
$size = filesize($path);
$time = filemtime($path);
$date = date("Y-m-d H:i:s", $time);
$data[$path]['size'] = $size;
$data[$path]['md5'] = $md5;
$data[$path]['date'] = $date;
}
}
function getDir($dir)
{
if(!is_dir($dir)) return false;
$data = array();
searchDir($dir, $data);
return $data;
}