php使用递归计算文件夹大小
方法很简单,这里就不多废话了,直接奉上代码:
protected function dir_size($dir){
$dh = opendir($dir); //打开目录,返回一个目录流
$size = 0; //初始大小为0
while(false !== ($file = @readdir($dh))){ //循环读取目录下的文件
if($file!='.' and $file!='..'){
$path = $dir.'/'.$file; //设置目录,用于含有子目录的情况
if(is_dir($path)){
$size += $this->dir_size($path); //递归调用,计算目录大小
}elseif(is_file($path)){
$size += filesize($path); //计算文件大小
}
}
}
closedir($dh); //关闭目录流
return $size; //返回大小
}
相关推荐
-
php计算整个目录大小的方法
本文实例讲述了php计算整个目录大小的方法.分享给大家供大家参考.具体实现方法如下: /** * Calculate the full size of a directory * * @author Jonas John * @version 0.2 * @param string $DirectoryPath Directory path */ function CalcDirectorySize($DirectoryPath) { // I reccomend using a normali
-
php字符串截取中文截取2,单字节截取模式
//中文截取2,单字节截取模式 function cn_substr($str,$slen,$startdd=0){ $restr = ""; $c = ""; $str_len = strlen($str); if($str_len < $startdd+1) return ""; if($str_len < $startdd + $slen || $slen==0) $slen = $str
-
php strlen mb_strlen计算中英文混排字符串长度
比较strlen和mb_strlen 当字符全是英文字符的时候,两者是一样.这里主要比较一下,中英文混排的时候,两个计算结果.(测试时编码方式是UTF8) 复制代码 代码如下: <?php $str='中文a字1符'; echo strlen($str); echo '<br />'; echo mb_strlen($str,'UTF8'); //输出结果 //14 //6 ?> 结果分析:在strlen计算时,对待一个UTF8的中文字符是3个长度,所以"中文a字1符&q
-
PHP实现字节数Byte转换为KB、MB、GB、TB的方法 原创
本文实例讲述了PHP实现字节数Byte转换为KB.MB.GB.TB的方法.分享给大家供大家参考,具体如下: 前面介绍了java实现字节数Byte转换为KB.MB.GB.TB的方法 ,这里改用PHP实现这一功能.代码非常简单: <?php function getFilesize($num){ $p = 0; $format='bytes'; if($num>0 && $num<1024){ $p = 0; return number_format($num).' '.$f
-
用PHP来计算某个目录大小的方法
PHP CURL session COOKIE 可以调用系统命令,还可以这样: 复制代码 代码如下: function dirsize($dir) { @$dh = opendir($dir); $size = 0; while ($file = @readdir($dh)) { if ($file != "." and $file != "..") { $path = $dir."/".$file; if (is_dir($path)) { $
-
PHP中字符与字节的区别及字符串与字节转换示例
字符: 字符是可使用多种不同字符方案或代码页来表示的抽象实体.例如,Unicode UTF-16 编码将字符表示为 16 位整数序列,而 Unicode UTF-8 编码则将相同的字符表示为 8 位字节序列.公共语言运行库使用 Unicode UTF-16(Unicode 转换格式,16 位编码形式)表示字符. php在UTF-8编码下,一个汉字占3个字符,gbk编码下只占2个字符. 字节(Byte): 字节是通过网络传输信息(或在硬盘或内存中存储信息)的单位. 应用: 如果数据库中表为UTF8
-
php对文件夹进行相关操作(遍历、计算大小)
为大家分享的第一个操作内容: 遍历并打印指定目录下所有文件 <?php //功能:遍历并打印指定目录下所有文件 function scan_dir($dir_name,$dir_flag=1) { static $FILE_COUNT=1; //记录文件数目 初值为1 目录名称不记 $FILE_COUNT--; //每调用一次scan_dir()函数自减1 @$dir_handle=opendir($dir_name); //抑制错误信息显示 便于自定义错误显示 if(!$dir_handle)
-
php计算一个文件大小的方法
本文实例讲述了php计算一个文件大小的方法.分享给大家供大家参考.具体如下: <?php function dirSize($directoty){ $dir_size=0; if($dir_handle=@opendir($directoty)) { while($filename=readdir($dir_handle)){ $subFile=$directoty.DIRECTORY_SEPARATOR.$filename; if($filename=='.'||$filename=='..
-
php计算整个mysql数据库大小的方法
本文实例讲述了php计算整个mysql数据库大小的方法.分享给大家供大家参考.具体如下: 这里用MB,KB或者GB的格式返回计算结果. function CalcFullDatabaseSize($database, $db) { $tables = mysql_list_tables($database, $db); if (!$tables) { return -1; } $table_count = mysql_num_rows($tables); $size = 0; for ($i=0
-
C#先判断是否存在再创建文件夹或文件与递归计算文件夹大小
文件夹,文件这是常见的,怎么创建? 要不要先判断是否存在?非常非常基础的知识点 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace dazilianxi.wenjian { public class WenJianLei { const string main_Dir = @"D:/WenTest"; const
-
php使用递归计算文件夹大小
方法很简单,这里就不多废话了,直接奉上代码: 复制代码 代码如下: protected function dir_size($dir){ $dh = opendir($dir); //打开目录,返回一个目录流 $size = 0; //初始大小为0 while(false !== ($file = @readdir($dh))){ //循环读取目录下的文件 if($file!='.'
-
Linux du命令查看文件夹大小并按降序排列
1. df -lh 2. du -s /usr/* | sort -rn 这是按字节排序 3. du -sh /usr/* | sort -rn 这是按兆(M)来排序 4.选出排在前面的10个 du -s /usr/* | sort -rn | head 5.选出排在后面的10个 du -s /usr/* | sort -rn | tail du -h –-max-depth=0 user du -sh –-max-depth=2 | more 总结du常用命令 du -h --max-dept
-
Python简单计算文件夹大小的方法
本文实例讲述了Python简单计算文件夹大小的方法.分享给大家供大家参考.具体如下: import os, re """ 查看文件夹下的所有文件及文件夹 join为拼接函数 """ def Look_File(path): for root , dirs, files in os.walk(path, True): print root #主目录 for item in files: #主目录下的文件夹 print os.path.join(ro
-
PHP获取文件夹大小函数用法实例
本文实例讲述了PHP获取文件夹大小函数用法.分享给大家供大家参考.具体如下: <?php // 获取文件夹大小 function getDirSize($dir) { $handle = opendir($dir); while (false!==($FolderOrFile = readdir($handle))) { if($FolderOrFile != "." && $FolderOrFile != "..") { if(is_dir(
-
Linux中du-查看文件夹大小并按大小进行排序详解
Linux中du-查看文件夹大小并按大小进行排序详解 某天,我想检查一下电脑硬盘的的使用情况,作为一个命令控,废话少说,开始吧: 使用df 命令查看当前磁盘使用情况: jack@jiaobuchong:~$ df -lh Filesystem Size Used Avail Use% Mounted on /dev/sda3 18G 5.7G 11G 35% / udev 2.7G 4.0K 2.7G 1% /dev tmpfs 553M 916K 552M 1% /run none 5.0M
-
C#实现获取文件夹大小的方法
本文实例讲述了C#实现获取文件夹大小的方法.分享给大家供大家参考.具体如下: 当然了,首先都需要引入System.IO这个命名空间 第一个方法: public static long GetDirectoryLength(string dirPath) { //判断给定的路径是否存在,如果不存在则退出 if (!Directory.Exists(dirPath)) return 0; long len = 0; //定义一个DirectoryInfo对象 DirectoryInfo di = n
-
Android查看文件夹大小以及删除文件夹的工具类
在开发中当程序发生ANR或者异常,我们会将信息存在本地,然后上传服务器,这样可以实时去发现问题修改问题. 那我们需要获取文件之后需要对文件进行删除等操作,下面是写的一个工具类,用于查看文件夹大小以及删除文件夹. import android.text.TextUtils; import java.io.File; import java.math.BigDecimal; public class StorageCleanUtils { /** * 获取文件夹大小(递归) * * @param f
-
获得文件夹大小的VBS代码
核心代码 '---------------------- '获得文件夹的大小 'Author = baiyang 'Version = 1.0 'Date = 09.08.08 '---------------------- Option Explicit On Error Resume Next Dim objFSO, objLocalFolder, strArg, longLocalFolderSize, strSizeMess '判断是不是没有路径参数 If WScript.Argumen
-
Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)
复制代码 代码如下: using System; using System.IO; using System.Text; using System.Data; using System.Web.UI; using System.Web.UI.WebControls; namespace ec { /// <summary> /// 文件操作类 /// </summary> public class FileObj : IDisposable { private bool _alre
随机推荐
- 如何用表单的方式推送请求的信息?
- sqlite3 top的查询及limit语法介绍
- jquery实现界面无刷新加载登陆注册
- node.js中的http.get方法使用说明
- JS利用cookie记忆当前位置的防刷新导航效果
- List the Codec Files on a Computer
- MySQL下海量数据的迁移步骤分享
- php性能分析之php-fpm慢执行日志slow log用法浅析
- php 类自动载入的方法
- SpringMVC4 + MyBatis3 + SQL Server 2014整合教程(含增删改查分页)
- 哈佛成功金句-25则
- 没有SQL Server数据库时如何打开.MDF文件
- 非常详细的SQL--JOIN之完全用法
- jQuery技巧大放送 学习jquery的朋友可以看下
- C++编程中的函数指针初步解析
- Android使用OKHttp包处理HTTP相关操作的基本用法讲解
- PHP MYSQL实现登陆和模糊查询两大功能
- Yii实现Command任务处理的方法详解
- Android中listview嵌套scrollveiw冲突的解决方法
- C++获取类的成员函数的函数指针详解及实例代码