擷取windows磁碟的可用空間函數

來源:互聯網
上載者:User

標籤:return   pow   關聯陣列   多個   var   upper   round   str   window   

<?php    /*    *擷取某個磁碟的剩餘空間    *$param 關聯陣列,下標是哪個盤,單位,可以是B,KB,MB,GB    *可以設定擷取多個磁碟,例如:array(‘C‘=>‘KB‘,‘D‘=>‘MB‘,‘E‘=>‘GB‘,‘F‘=>‘B‘)    *假如出錯,返回false    */    function Space($arr){        //檢查參數        if(is_array($arr)){            //初始化儲存值            $memory = array();            foreach($arr as $disk=>$size){                $D = strtoupper($disk).‘:‘;//轉化為大寫的鍵盤路徑                $S = strtoupper($size);//轉變為大寫的單位                if(in_array($D,array(‘C:‘,‘D:‘,‘E:‘,‘F:‘)) && in_array($S,array(‘B‘,‘KB‘,‘MB‘,‘GB‘,‘TB‘))){                    switch($S){                        case ‘B‘:                            $memory[$disk]= disk_free_space($D).‘B‘;                        break;                        case ‘KB‘:                            $d = round(disk_free_space($D) / 1024);                            $memory[$disk] = $d .‘KB‘;                        break;                        case ‘MB‘:                            $d = round(disk_free_space($D) / pow(1024,2));                            $memory[$disk]= $d.‘MB‘;                        break;                        case ‘GB‘:                            $d = round(disk_free_space($D) / pow(1024,3));                            $memory[$disk]= $d.‘GB‘;                        break;                        case ‘TB‘:                            $d =  sprintf("%.4f", disk_free_space($D) / pow(1024,4));                            $memory[$disk] = $d .‘TB‘;                        break;                        default:                            return 0;                        break;                    }                }else{                    return null;                }            }            return $memory;        }else{            return null;        }    }    $arr = array(‘c‘=>‘kb‘,‘d‘=>‘Mb‘,‘e‘=>‘Gb‘,‘f‘=>‘Tb‘);    var_dump(Space($arr));

 

擷取windows磁碟的可用空間函數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.