ホームページ  >  記事  >  バックエンド開発  >  PHP はサーバー上のすべてのディスク領域のサイズを取得します_PHP チュートリアル

PHP はサーバー上のすべてのディスク領域のサイズを取得します_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:46:361390ブラウズ

日常的なプログラミングでは、ディスク容量の使用量を取得する必要がある場合があります。ほとんどの場合、disk_free_space 関数と disk_total_space 関数が使用されます。

次の例は、サーバーのすべてのディスク領域のサイズを取得する例です。

/**

* バイトフォーマット BK M G T P E Z Y で記述されたサイズにバイト数をフォーマットします

* @param int $size サイズ

* @param int $dec 表示タイプ

* @return int

​*/

関数 byte_format($size,$dec=2)

{

$a = array("B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB");

$pos = 0;

一方 ($size >= 1024)

{

$size /= 1024;

$pos++;

}

Round($size,$dec) を返します。" ".$a[$pos];

}

/**

* シングルディスク情報を取得します

* @param $letter

* @return 配列

​*/

関数 get_disk_space($letter)

{

//ディスク情報を取得します

$diskct = 0;

$disk = array();

/*if(@disk_total_space($key)!=NULL) *サーバーへの影響を防ぐため、フロッピードライブはチェックされていません

{

$diskct=1;

$disk["A"]=round((@disk_free_space($key)/(1024*1024*1024)),2)."G / ".round((@disk_total_space($key)/(1024*1024* 1024)),2).'G';

}*/

$diskz = 0 //総ディスク容量

;

$diskk = 0 //ディスク残容量

;

$is_disk = $letter.':';

If(@disk_total_space($is_disk)!=NULL)

{

$diskct++;

$disk[$letter][0] = byte_format(@disk_free_space($is_disk));

$disk[$letter][1] = byte_format(@disk_total_space($is_disk));

$disk[$letter][2] =round(((@disk_free_space($is_disk)/(1024*1024*1024))/(@disk_total_space($is_disk)/(1024*1024*1024)))*100, 2).'%';

$diskk+=byte_format(@disk_free_space($is_disk));

$diskz+=byte_format(@disk_total_space($is_disk));

}

$disk を返します。www.2cto.com

}

/**

* ディスク使用量を取得します

* @return var

​*/

関数 get_spec_disk($type='system')

{

$disk = array();

スイッチ($type)

{

ケース「システム」:

//strrev(array_pop(explode(':',strrev(getenv_info('SystemRoot')))));//システムドライブ文字を取得します

$disk = get_disk_space(strrev(array_pop(explode(':',strrev(getenv('SystemRoot')))));

休憩;

ケース「すべて」:

foreach (range('b','z') as $letter)

{

$disk = array_merge($disk,get_disk_space($letter));

}

休憩;

デフォルト:

$disk = get_disk_space($type);

休憩;

}

$disk を返します;

}

ここから、全体のディスク容量のサイズや残りのディスク容量を取得するなど、拡張することができます。

ここで繰り返しますが、サーバーにフロッピー ディスクがある場合は、必ずそれを避けるようにしてください。そうしないと、サーバー関連のフロッピー ディスク実行プログラムが妨げられ、すべてのディスク使用量を読み取るプログラムを使用すると速度が低下する可能性があります。知らせ!

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478578.html技術記事日常的なプログラミングでは、ディスク容量の使用量を取得する必要がある場合があります。ほとんどの場合、disk_free_space 関数と disk_total_space 関数が使用されます。 次の例は、サーバーのすべてのディスク容量を取得することです...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。