返回封装创建目录方......登陆

封装创建目录方法、读取目录并包含目录大小的方法 并测试

吴勇文2019-03-31 22:18:32201
/**
 * 目录创建操作
 * @param $dirName // 需要创建的目录名称
 * @return string   提示信息
 */
function create_folder($dirName)
{
    // 判断是否存在相同文件或目录
    if (file_exists($dirName)) {
        return "存在相同文件!";
    }
    // 创建目录并判断
    if (mkdir($dirName, 0777, true)) {
        return "目录创建成功!";
    }
    return "目录创建失败!";
}

//echo create_folder('css');

/**
 * 目录读取操作
 * @param $path // 读取的目录
 * @return array    数组|失败
 */
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('js'));

/**
 * 目录大小查询操作
 * @param $path     // 需要查询大小的目录
 * @return int      // 目录的大小
 */
function dir_size($path)
{
    $sum = 0;
    global $sum;
    $dir = opendir($path);
    while ($item = readdir($dir)) {
        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('js'));


最新手记推荐

• 用composer安装thinkphp框架的步骤• 省市区接口说明• 用thinkphp,后台新增栏目• 管理员添加编辑删除• 管理员添加编辑删除

全部回复(0)我要回复

暂无评论~
  • 取消回复发送