<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    php查找指定目錄下指定大小文件的方法

    時間:2025-06-03 02:35:37 php語言 我要投稿
    • 相關推薦

    php查找指定目錄下指定大小文件的方法

      php查找指定目錄下指定大小文件的方法,首先遍歷目錄,再查找文件大小,并附帶給出了一個計算字節的函數,是非常實用的技巧,需要的朋友可以參考下。

      本文實例講述了php查找指定目錄下指定大小文件的方法。分享給大家供大家參考。具體實現方法如下:

      php查找文件大小的原理是遍歷目錄然后再利用filesize來計算文件大小,然后我們再加一判斷就可以了,下面整理了一些例子.

      我們先來看遍歷目錄,代碼如下:

      復制代碼 代碼如下:

      function tree($directory)

      {

      $mydir = dir($directory);

      echo "<ul>n";

      while($file = $mydir->read())

      {

      if((is_dir("$directory/$file")) AND ($file!=".") AND ($file!=".."))

      {

      echo "<li><font color="#ff00cc"><b>$file</b></font></li>n";

      tree("$directory/$file");

      }

      else

      echo "<li>$file</li>n";

      }

      echo "</ul>n";

      $mydir->close();

      }

      //開始運行

      echo "<h2>目錄為粉紅色</h2><br>n";

      tree("./nowamagic");

      這樣只是把所有目錄下的文件顯示了,但我們要判斷大小需加上round(filesize($cpath)/1024,1)函數了,這樣我們獲取大小之后就可以顯示文件大小了,代碼如下:

      復制代碼 代碼如下:

      <?php

      header("Content-Type:text/html;charset=gbk");

      set_time_limit(0);

      $dirpath=dirname(__FILE__);

      //bytes

      $limitByte=1024*110;

      //這里改成你合適的查找文件最低大小,單位為字節。1024*100表示 1024*100字節,即100KB

      $arrRes=$arrTmp=array();

      showMaxFile($dirpath,$limitByte);

      function showMaxFile($path,$limitByte){

      global $arrRes;

      $h=opendir($path);

      if($h){

      while (false !== ($file = readdir($h))) {

      if($file!='.' && $file!='..'){

      $cpath=$path.'/'.$file;

      if(is_dir($cpath)){

      showMaxFile($cpath,$limitByte);

      }else{

      if(filesize($cpath) > $limitByte){

      $arrRes[]=array($cpath,round(filesize($cpath)/1024,1));

      //echo "<p>{$cpath}<br />".(filesize($cpath) / 1024)."KB</p>";

      }

      }

      }

      }

      }

      closedir($h);

      }

      foreach($arrRes as $k=>$v){

      $arrTmp[$k]=$v[1];

      }

      arsort($arrTmp);

      foreach($arrTmp as $k=>$v){

      echo "<p>".str_replace($dirpath,'',$arrRes[$k][0])."<br />".$arrRes[$k][1]."</p>";

      }

      ?>

      最后給大家附一個字節計算函數,這個可以轉換,代碼如下:

      復制代碼 代碼如下:

      //字節數轉換成帶單位的

      /* 原理是利用對數求出欲轉換的字節數是1024的幾次方。

      * 其實就是利用對數的特性確定單位。

      */

      function size2mb($size,$digits=2){ //digits,要保留幾位小數

      $unit= array('','K','M','G','T','P');//單位數組,是必須1024進制依次的哦。

      $base= 1024;//對數的基數

      $i   = floor(log($size,$base));//字節數對1024取對數,值向下取整。

      return round($size/pow($base,$i),$digits).' '.$unit[$i] . 'B';

      }

    【php查找指定目錄下指定大小文件的方法】相關文章:

    php遍歷替換目錄下文件指定內容04-06

    Linux列舉大于指定大小文件的所在目錄的方法03-28

    php如何獲取指定地區天氣02-09

    php計算到指定日期還有多少天的方法03-24

    用PHP遍歷目錄下的全部文件06-13

    PHP獲取遠程文件大小的解決方法04-06

    PHP獲取遠程文件大小的3種解決方法04-29

    php截取指定長度中文字符的技巧07-16

    修改PHP上傳文件大小限制05-23

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人