Solved

PHP to read available disk space.

Posted on 2004-08-25
4
265 Views
Last Modified: 2008-02-01
I have an image management system written in PHP. I need to display the amount of space available
on the hard drive for the system.

How can I use php to get available disk space. Can some one please provide sample code.
0
Comment
Question by:malikatwork
  • 3
4 Comments
 
LVL 33

Accepted Solution

by:
snoyes_jw earned 80 total points
ID: 11892824
If you have version 4.1 or later, you can use disk_free_space().  Otherwise, you can use one of the exec methods and pass the appropriate command to the OS.
http://www.php.net/manual/en/function.disk-free-space.php
http://www.php.net/manual/en/ref.exec.php
0
 
LVL 27

Expert Comment

by:Diablo84
ID: 11892884
use the disk_free_space function

http://www.php.net/manual/en/function.disk-free-space.php

this will return it in bytes so if you want it in megabytes do this (for example)

<?php
$space = disk_free_space("C:");
$space = ($space/1024)/1024;
echo round($space,2)." Mb";
?>
0
 
LVL 27

Assisted Solution

by:Diablo84
Diablo84 earned 20 total points
ID: 11892905
or similarily in Gb

<?php
$space = disk_free_space("C:");
$space = (($space/1024)/1024)/1024;
echo round($space,2)." Gb";
?>
0
 
LVL 27

Expert Comment

by:Diablo84
ID: 11893783
A simple function i just wrote which may be useful to someone in the future:

<?php
function drivestat($drive,$graph=false) {

 $total = disk_total_space($drive);
 $free = disk_free_space($drive);
 $used = $total - $free;
 
 $percent = ($used/$total)*100;
 $percent = round($percent,0);

 $total = round(($total/1024/1024/1024),1)." Gb";
 $free = round(($free/1024/1024/1024),1)." Gb";
 $used = round(($used/1024/1024/1024),1)." Gb";
 
 $output =
 "<b>Drive $drive Information:</b><br>\n
 Total Capacity: $total<br>\n
 Used: $used - Free: $free<br>\n
 ";
 
 if ($graph == true) {
 
 $output .= '
 <table style="width: 180px; border: 1px solid #000000; font-size: 12px; color: #FFFFFF;" cellspacing="0">
  <tr>
   <td style="width: '.$percent.'%; background-color: #0000FF; text-align: center;">'.$percent.'%</td>
   <td style="width: '.(100-$percent).'%; background-color: #FF0000; text-align: center;">'.(100-$percent).'%</td>
  </tr>
 </table>';
 
 }
 
 return $output;
 
}

echo drivestat("C:",true);
?>
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Generating table dynamically is the most common issue faced by php developers.... So it seems there is a need of an article that explains the basic concept of generating tables dynamically. It just requires a basic knowledge of html and little maths…
Foreword (July, 2015) Since I first wrote this article, years ago, a great many more people have begun using the internet.  They are coming online from every part of the globe, learning, reading, shopping and spending money at an ever-increasing ra…
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

920 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now