php目录树读取文件创建修改和最后访问时间生成tree

php目录树读取文件创建修改和最后访问时间生成tree方便维护时取必要的参数看文件时间等等,代码如下:

<?php
error_reporting(E_ERROR);
function traverse($path = '.') {
$tree = $_SERVER["DOCUMENT_ROOT"]."/tree.html"; //写入tree文件路径
$current_dir = opendir($path); //opendir()返回一个目录句柄,失败返回false
while(($file = readdir($current_dir)) !== false) { //readdir()返回打开目录句柄中的一个条目
$sub_dir = $path . DIRECTORY_SEPARATOR . $file; //构建子目录路径
if($file == '.' || $file == '..') {
continue;
} else if(is_dir($sub_dir)) { //如果是目录,进行递归
$str1 = '目录: ' . $file . date("创建时间:Y-m-d H:i:s",filectime($path)) . date("修改时间:Y-m-d H:i:s",filemtime($path)) . date("最后访问时间:Y-m-d H:i:s",fileatime($path)) . '<br>';
file_put_contents($tree,$str1,FILE_APPEND);
traverse($sub_dir);
} else { //如果是文件,直接输出
$wenjian = $path . '/' . $file;
$str2 = '文件:' . $path . ': ' . $file . date("创建时间:Y-m-d H:i:s",filectime($wenjian )) . date("修改时间:Y-m-d H:i:s",filemtime($wenjian)) . date("最后访问时间:Y-m-d H:i:s",fileatime($wenjian)) . '<br>';
file_put_contents($tree,$str2,FILE_APPEND);
}
}

}

traverse($_SERVER["DOCUMENT_ROOT"]);
echo "<a href='tree.html'>查看目录树</a>";