和php統計文件大小(和php統計文件大小的命令)

本文目錄一覽:

php怎樣用自定義函數統計目錄大小

?php

//自定義一個函數dirSize(),統計傳入參數的目錄大小

function dirSize($directory){

$dir_size = 0; //用來累加各個文件大小

if($dir_handle = @opendir($directory)){ //打開目錄,並判斷是否能成功打開

while($filename = readdir($dir_handle)){ //循環遍歷目錄下的所有文件

if($filename != “.” $filename != “..”){ //一定要排除兩個特殊的目錄

$subFile = $directory.”/”.$filename; //將目錄下的子文件和當前目錄相連

if(is_dir($subFile)) //如果為目錄

$dir_size += dirSize($subFile); //遞歸地調用自身函數,求子目錄的大小

if(is_file($subFile)) //如果是文件

$dir_size += filesize($subFile); //求出文件的大小並累加

}

}

closedir($dir_handle); //關閉文件資源

return $dir_size; //返回計算後的目錄大小

}

}

$dir_size = dirSize(“phpMyAdmin”); //調用該函數計算目錄大小

echo round($dir_size/pow(1024,1),2).”KB”; //位元組數轉換為「KB」單位並輸出

?希望能幫到你,我還在後盾人線下面授培訓上課學習呢現在沒時間,有不會的可以問我,加油吧✧*。٩(^㉨^*)و✧*。

php如何檢測某文件夾里的各個文件夾大小

可以使用scandir()和filesize()函數實現:

$path=”.”;//.是當前目錄,你可以換成自己的目錄地址

foreach(scandir($path) as $v){

if(!is_dir($v)){//如果不是目錄,就是文件了

$size=filesize($v);

echo “文件:”.$v.” 大小:”.byte_format($size).”br”;//單位是kb

}

}

//格式化函數

function byte_format($size, $dec=2){

    $a = array(“B”, “KB”, “MB”, “GB”, “TB”, “PB”);

    $pos = 0;

    while ($size = 1024) {

         $size /= 1024;

           $pos++;

    }

    return round($size,$dec).” “.$a[$pos];

 }

PHP怎麼獲取文件大小

filesize

(PHP 4, PHP 5)

filesize — 取得文件大小

說明

int filesize ( string $filename )

返迴文件大小的位元組數,如果出錯返回 FALSE 並生成一條 E_WARNING 級的錯誤。

Note: 因為 PHP 的整數類型是有符號的,並且大多數平台使用 32 位整數,filesize() 函數在碰到大於 2GB 的文件時可能會返回非預期的結果。對於 2GB 到 4GB 之間的文件通常可以使用 sprintf(“%u”, filesize($file)) 來克服此問題。

Note: 此函數的結果會被緩存。參見 clearstatcache() 以獲得更多細節。

Tip

自 PHP 5.0.0 起, 此函數也用於某些 URL 包裝器。請參見 Supported Protocols and Wrappers以獲得支持 stat() 系列函數功能的包裝器列表。

Example #1 filesize() 例子

?php

// 輸出類似:somefile.txt: 1024 bytes

$filename = ‘somefile.txt’;

echo $filename . ‘: ‘ . filesize($filename) . ‘ bytes’;

?

參見 file_exists()。

php 如何獲取文件大小

本函數通過header頭信息獲取遠程文件大小,代碼如下:

?php

function getFileSize($url){

$url = parse_url($url);

if($fp = @fsockopen($url[‘host’],empty($url[‘port’])?80:$url[‘port’],$error)){

fputs($fp,”GET “.(empty($url[‘path’])?’/’:$url[‘path’]).” HTTP/1.1\r\n”);

fputs($fp,”Host:$url[host]\r\n\r\n”);

while(!feof($fp)){

$tmp = fgets($fp);

if(trim($tmp) == ”){

break;

}else if(preg_match(‘/Content-Length:(.*)/si’,$tmp,$arr)){

return trim($arr[1]);

}

}

return null;

}else{

return null;

}

}

?

調用方法很簡單,代碼如下:

?php

echo getFileSize(“/Article/UploadFiles/201001/20100104122349734.gif”)

此函數獲取遠程文件大小的效果非常好,無論遠程文件體積有多大,獲取速度完全不受影響。

統計文件所佔磁盤空間大小的php代碼

?php

#循環遍歷目錄中所有的文件,並統計目錄和文件的大小

$dirName=”phpMyAdmin”;

$dir=opendir($dirName);

#返回一個資源類型

while($fileName=readdir($dir)){

$file=$dirName.”/”.$fileName;

if($fileName!=”.”

$fileName!=”..”){

if(is_dir($file)){

echo

“font

color=’red'”.$fileName.”===”.date(“Y-m-d

H:i:s”,filectime($file)).”==”.filetype($file).”==”.toSize(dirSize($file)).”/fontbr/”;

}

else{

echo

“font

color=’green'”.$fileName.”=====”.date(“Y-m-d

H:i:s”,filectime($file)).”====”.filetype($file).”====”.toSize(filesize($file)).”/fontbr/”;

}

}

}

closedir($dir);

#把文件或目錄的大小轉化為容易讀的方式

function

toSize($size){

$dw;

#指定文件或目錄統計的單位方式

if($sizepow(2,30)){

$dw=”GB”;

$size=round($size/pow(2,30),2);

}

else

if($sizepow(2,20)){

$dw=”MB”;

$size=round($size/pow(2,20),2);

}

else

if($sizepow(2,10)){

$dw=”KB”;

$size=round($size/pow(2,10),2);

}

else

{

$dw=”bytes”;

}

return

$size.$dw;

}

#利用遞歸的方式統計目錄的大小

function

dirSize($dirName){

$dirsize=0;

$dir=opendir($dirName);

while($fileName=readdir($dir)){

$file=$dirName.”/”.$fileName;

if($fileName!=”.”

$fileName!=”..”){

//一定要進行判斷,否則會出現錯誤的

if(is_dir($file)){

$dirsize+=dirSize($file);

}

else{

$dirsize+=filesize($file);

}

}

}

closedir($dir);

return

$dirsize;

}

?

原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/130139.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
簡單一點的頭像簡單一點
上一篇 2024-10-03 23:27
下一篇 2024-10-03 23:27

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Python命令大全及說明

    Python是一種高級編程語言,由Guido van Rossum於1989年底發明。它具有良好的語法結構和面向對象的編程思想,具有簡潔、易讀、易學的特點,是初學者以及專業開發人員…

    編程 2025-04-29
  • Git config命令用法介紹:用正確的郵箱保障開發工作

    本文將詳細介紹如何使用git config命令配置Git的全局和本地用戶信息,特別是如何正確使用用戶郵箱,保障Git操作的正常進行。 一、git config命令介紹 Git中的每…

    編程 2025-04-29
  • Python SSH 遠程執行命令

    Python SSH 遠程執行命令是指在一個服務器上執行遠程另一個服務器上命令。如果你需要在本地機器上執行命令,或者在遠程機器上執行本地命令,你都可以使用 SSH。在 Python…

    編程 2025-04-29
  • 剖析命令執行函數

    在編程開發過程中,命令執行函數是非常常見的一個概念。它是指接受一個命令字符串,並將其解析執行,返回相應的結果或錯誤信息的函數。本文將從多個方面對命令執行函數進行詳細的闡述,包括其定…

    編程 2025-04-28
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • 如何使用Python執行Shell命令並獲取執行過程信息

    本文將介紹如何使用Python執行Shell命令並獲取執行過程信息。我們將從以下幾個方面進行闡述: 一、執行Shell命令 Python內置的subprocess模塊可以方便地執行…

    編程 2025-04-28
  • Python中獲取用戶輸入命令的方法解析

    本文將從多個角度,分別介紹Python中獲取用戶輸入命令的方法,希望能夠對初學者有所幫助。 一、使用input()函數獲取用戶輸入命令 input()是Python中用於獲取用戶輸…

    編程 2025-04-27
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27

發表回復

登錄後才能評論