zoukankan      html  css  js  c++  java
  • PHP 统计文件数和文件大小

    /**
    * 统计文件数和文件大小
    */
    private function getFileCacheCount($pathName)
    {
    $data = [
    'num' => 0,
    'size' => 0
    ];
    $dir = opendir($pathName);
    while(false !== ($file_name = readdir($dir))){
    if(!($file_name == "." || $file_name == "..")){
    $fileName = $pathName . "/" . $file_name;
    if(is_dir($fileName)){
    $subData = $this->getFileCacheCount($fileName);
    $data['size'] += $subData['size'];
    $data['num'] += $subData['num'];
    }else{
    $data['size'] += filesize($fileName);
    $data['num']++;
    }
    }
    }
    closedir($dir);
    return $data;
    }

    //文件路径
    $cachePath = '文件路径';
    $data = getFileCacheCount($cachePath);
    switch ($data['size']){
    case $data['size'] > 1024:
    $data['size'] = round($data['size']/1024, 2) . 'KB';
    break;
    case $data['size'] > 1024*1024:
    $data['size'] = round($data['size']/1024/1024, 2) . 'MB';
    break;
    default:
    $data['size'] = $data['size'] . 'B';
    };
  • 相关阅读:
    java多线程
    golang编码转换
    golang csv,xls,xlsx
    golang 资源
    electron安装
    Ubuntu系统下面软件安装更新命令
    golang代码执行顺序
    datatables使用
    Echarts柱形图颜色设置
    golang chan 超时
  • 原文地址:https://www.cnblogs.com/l-zl/p/7267206.html
Copyright © 2011-2022 走看看