PHP获取文件大小,磁盘大小的方法
- 6164
- PHP
- 3
- super_dodo
- 2014/01/16
使用PHP对相应的文件或者磁盘进行大小的计算,以及真实直观的单位的换算方法,文件的权限,文件的类型等,了解文件的一些相关属性.
date_default_timezone_set('Asia/Shanghai');
header("Content-Type:text/html;Charset='utf-8'");
$filename = 'index00.php';
if (file_exists($filename)) {
echo $filename." 创建的时间是 " . date("Y-m-d H:i:s.", filectime($filename)).'<hr>';
echo $filename." 最后修改的时间是 " . date("Y-m-d H:i:s.", fileatime($filename)).'<hr>';
}
echo substr(sprintf('%o', fileperms($filename)), -4).'<hr>'; //文件权限
echo filetype('../demo').'<hr>'; //文件类型
echo $cSize = disk_free_space('C:/').'<hr>'; //磁盘大小 C盘
获取文件夹大小
function getDirSize($dir){
$handle = opendir($dir);
while (false!==($FolderOrFile = readdir($handle))){
if($FolderOrFile != "." && $FolderOrFile != ".."){
$sizeResult = 0;
if(is_dir("$dir/$FolderOrFile")){
$sizeResult += getDirSize("$dir/$FolderOrFile");
}else{
$sizeResult += filesize("$dir/$FolderOrFile");
}
}
}
closedir($handle);
return $sizeResult;
}
单位自动转换函数
function getRealSize($size){
$kb = 1024; // Kilobyte
$mb = 1024 * $kb; // Megabyte
$gb = 1024 * $mb; // Gigabyte
$tb = 1024 * $gb; // Terabyte
if($size < $kb){
return $size." B";
}else if($size < $mb){
return round($size/$kb,2)." KB";
}else if($size < $gb){
return round($size/$mb,2)." MB";
}else if($size < $tb){
return round($size/$gb,2)." GB";
}else{
return round($size/$tb,2)." TB";
}
}
echo getRealSize($cSize);
echo '<hr>';
echo getRealSize(getDirSize('./bootstrap'));
不知死而死,是为无知。知死而死,是为无畏。
相关阅读
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
热门文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
最新文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例

