/**
* 获取文件夹中的文件,含目录
* @param $path
* @param string $exts
* @param array $list
* @return array
*/
function dir_list($path, $exts = '', $list= array()) {
$path = dir_path($path);
$files = glob($path.'*');
foreach ($files as $v) {
$fileext = fileext($v);
if (!$exts || preg_match("/\.($exts)/i", $v)) {
$list[] = $v;
if (is_dir($v)) {
$list = dir_list($v, $exts, $list);
}
}
}
return $list;
}
/**
* 补齐目录后的/
* @param $path 目录
* @return string
*/
function dir_path($path) {
$path = str_replace('\\', '/', $path);
if (substr($path, -1) != '/') $path = $path.'/';
return $path;
}
/**
* 查找文件后缀
* @param $filename 文件名称
* @return string 后缀名称(如:html)
*/
function fileext($filename) {
return strtolower(trim(substr(strrchr($filename, '.'), 1, 10)));
}
/**
* 删除目录及文件
* @param $dir
* @return bool
*/
function dir_delete($dir) {
$dir = dir_path($dir);
if (!is_dir($dir)) return FALSE;
$list = glob($dir.'*');
foreach ($list as $v) {
is_dir($v) ? dir_delete($v) : @unlink($v);
}
return @rmdir($dir);
}