php获取安装目录文件大小,php获取目录大小的方法_php

大致程序思想就是使用递规来计算目录占用空间多少, 然后再把这个占用空间的值写进文本文件里, 那么只要访问这个txt文件就知道占用了多少空间, 不用频繁获取而读磁盘, 节省资源. 每次用户如果上传的文件或者删除了文件, 那么又重新进行统计. 当然, 也可以把统计结果保存到数据库里.

/**

* File: fetch user directory use size

* Author: heiyeluren

* Create: 2005-9-19 16:20

* Modifed: 2005-9-19 16:41

http://www.gaodaima.com/48471.htmlphp获取目录大小的方法_php

*/

/*** 基本函数 ***/

//计算目录大小

function countDirSize(dir)

{

handle = opendir(dir);

while (false!==(FolderOrFile = readdir(handle)))

{

if(FolderOrFile != "." && FolderOrFile != "..")

{

if(is_dir("dir/FolderOrFile")) {

sizeResult += getDirSize("dir/FolderOrFile");

} else {

sizeResult += filesize("dir/FolderOrFile");

}

}

}

closedir(handle);

return sizeResult;

}

//保存用户文件大小

function saveDirSize(userDir)

{

userDirSize = countDirSize(userDir);

if (!fp = fopen(userDir."/dir_size.txt", "w+")) {

die("Open file failed");

} else {

fwrite(fp, dirSize);

}

}

//获取用户目录的大小

function getDirSize(userDir)

{

user = addslashes(userDir);

sizeFile = userDir."/dir_size.txt";

if (!fp = fopen(sizeFile, "r") {

return 0;

} else {

dirSize = fread(fp, filesize(sizeFile));

}

return dirSize;

}

/*** 调用实例 ***/

user = "heiyeluren";

userPath = "./user/".user;

//如果用户执行了删除或者上传文件的操作就重新获取目录大小

if (action == "upload" action == "delete") {

saveDirSize(userPath);

}

userDirSize = getDirSize(userPath)/1024;

echo "用户: ".user;

echo "占用空间: ".userDirSize;

?>

欢迎大家阅读《php获取目录大小的方法_php》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码

原创文章,转载请注明: 转载自搞代码

e7ce419cf2d6ad34d01da2ceb8829eed.png

微信 赏一包辣条吧~

023a57327877fb4402bcc76911ec18ea.png

支付宝 赏一听可乐吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值