ขอถามเซียน PHP หน่อยครับ จะหาพื้นที่.....

เริ่มโดย yen032, 11 ตุลาคม 2010, 21:59:03

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

yen032

ขอถามเซียน PHP หน่อยครับ จะหาพื้นที่ Folder ด้วย php ได้ยังไง

สมมุติผมจะหาพื้นที่ที่เหลือของ C:\seo\

จะหาได้ไหมครับว่า folder seo เหลือพื้นที่เท่าไหร่ครับ

ปล.ผมลองใช้ disk_free_space มันหาพื้นที่ได้แต่ ไดร์ หา folder ไม่ได้

รบกวนเซียน php ช่วยทีนะครับ

ขอบคุณครับ

:wanwan004: :wanwan004: :wanwan004: :wanwan004: :wanwan004:

gootooyoo

<?php

function get_dir_size($dir_name){
        $dir_size =0;
           if (is_dir($dir_name)) {
               if ($dh = opendir($dir_name)) {
                  while (($file = readdir($dh)) !== false) {
                        if($file !="." && $file != ".."){
                              if(is_file($dir_name."/".$file)){
                                   $dir_size += filesize($dir_name."/".$file);
                             }
                             /* check for any new directory inside this directory */
                             if(is_dir($dir_name."/".$file)){
                                $dir_size +=  get_dir_size($dir_name."/".$file);
                              }
                           }
                     }
             }
       }
closedir($dh);
return $dir_size;
}

$dir_name = "directory name here";
/* 1048576 bytes == 1MB */
$total_size= round((get_dir_size($dir_name) / 1048576),2) ;
print "Directory $dir_name size : $total_size MB";
?>
ขวากหนาม ที่เราต้องข้ามผ่าน ถึงจะเจ็บก็จะไป (\◣_◢/)  [direct=http://gootooyoo.blogspot.com] [/direct]
[direct=http://gootooyoo.blog.com] ❤ [direct=http://free-icons.blogspot.com] ❤  [direct=http://goo-dog.blogspot.com]❤

yen032

อ้างถึงจาก: gootooyoo ใน 12 ตุลาคม 2010, 13:48:12
<?php

function get_dir_size($dir_name){
        $dir_size =0;
           if (is_dir($dir_name)) {
               if ($dh = opendir($dir_name)) {
                  while (($file = readdir($dh)) !== false) {
                        if($file !="." && $file != ".."){
                              if(is_file($dir_name."/".$file)){
                                   $dir_size += filesize($dir_name."/".$file);
                             }
                             /* check for any new directory inside this directory */
                             if(is_dir($dir_name."/".$file)){
                                $dir_size +=  get_dir_size($dir_name."/".$file);
                              }
                           }
                     }
             }
       }
closedir($dh);
return $dir_size;
}

$dir_name = "directory name here";
/* 1048576 bytes == 1MB */
$total_size= round((get_dir_size($dir_name) / 1048576),2) ;
print "Directory $dir_name size : $total_size MB";
?>

มันใช้ยังไงครับ
สมมุติจะหาพื้นที่ Folder D:\torr\

จะต้องเขียนยังไงครับ

gootooyoo

<?php

function get_dir_size($dir_name){
    $dir_size =0;
    if (is_dir($dir_name)) {
        if ($dh = opendir($dir_name)) {
            while (($file = readdir($dh)) !== false) {
            if($file !="." && $file != ".."){
                if(is_file($dir_name."/".$file)){
                    $dir_size += filesize($dir_name."/".$file);
                }
                /* check for any new directory inside this directory */
                    if(is_dir($dir_name."/".$file)){
                        $dir_size += get_dir_size($dir_name."/".$file);
                    }
                }
            }
        }
    }
    closedir($dh);
    return $dir_size;
}

/*
* เช่นชื่อโฟลเดอร์ที่คุณต้องการหา คือ datafiles
* 1. c:/www/datafiles
* 2. คุณสร้างไฟล์ ก่อน หน้ามัน เช่น findspace.php ใส่code ใน file นี้
* 3. คุณ copy findspace.php ไปที่ c:/www/
* 4.จะได้ findspace.php
* 5. ใส่ชื่อ folder เช่น $dir_name= datafiles;
*
* ปล. ตรงนี้คือตัวอย่างการทดสอบให้ดู เราสามารถตั้ง path ได้เอง เช่น $dir_name = "../datafiles";
*
*
*
*/

$dir_name = "ชื่อโฟลเดอร์"; /*<----  5./

/* 1048576 bytes == 1MB */
$total_size= round((get_dir_size($dir_name) / 1048576), 2);

print "Directory $dir_name size : $total_size MB" ;



?>
ขวากหนาม ที่เราต้องข้ามผ่าน ถึงจะเจ็บก็จะไป (\◣_◢/)  [direct=http://gootooyoo.blogspot.com] [/direct]
[direct=http://gootooyoo.blog.com] ❤ [direct=http://free-icons.blogspot.com] ❤  [direct=http://goo-dog.blogspot.com]❤

Queue



yen032