PHP判断文件大小是MB、GB、TB...

2019/08/08 13:53
阅读数 23
<?php
     date_default_timezone_set ("PRC" );

     function getFilePro($fileName){
           if (!file_exists($fileName)){
               echo "文件或目录{$fileName} 不存在<br>" ;
               return ;
          } else {
               echo "文件的类型".filetype($fileName). "<br>" ;
          }    

           if (is_file($fileName)){
               echo "这是一个文件<br>" ;
              echo "文件的大小为" .getFileSize(filesize($fileName))."<br>" ;
          }

           if (is_dir($fileName)){
               echo "这是一个目录<br>" ;
          }

           if (is_readable($fileName)){
               echo "这个文件可以读<br>" ;
          }
           if (is_writable($fileName)){
               echo "这个文件可以写<br>" ;
          }
           if (is_executable($fileName)){
               echo "这个文件可以执行<br>" ;
          }

           echo "文件的创建时间:" .date("Y-m-d H:i:s",filectime($fileName))."<br>";
           echo "文件的修改时间:" .date("Y-m-d H:i:s",filemtime($fileName))."<br>";
           echo "文件的最后访问时间:" .date("Y-m-d H:i:s",fileatime($fileName))."<br>";

     }

     function getFileSize($size){
          $dw= "Byte" ;

           if ($size >= pow(2, 40)){
              $size=round($size/pow(2, 40), 2);
              $dw= "TB" ;
          } else if ($size >= pow(2, 30)){
              $size=round($size/pow(2, 30), 2);
              $dw= "GB" ;
          } else if ($size >= pow(2, 20)){
              $size=round($size/pow(2, 20), 2);
              $dw= "MB" ;
          } else if ($size >= pow(2, 10)){
              $size=round($size/pow(2, 10), 2);
              $dw= "KB" ;
          } else {
              $dw= "Bytes" ;
          }
           return $size.$dw;
     
     }

     getFilePro( "demo.txt" );
     echo '<hr>';
     getFilePro( "hello" );

?>

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部