Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PHP Filesystem disk_total_space() Function



The PHP Filesystem disk_total_space() function can be used to find out the total size of a Filesystem or disc partition in bytes. This can be very helpful to track disc use, verifying that there is sufficient space for operations, or allowing access to disc data.

Given a string containing a directory, the disk_total_space() function can return the total number of bytes on corresponding Filesystem or disk partition.

Syntax

Below is the syntax of the PHP Filesystem disk_total_space() function −

float disk_total_space ( string directory )

Parameters

The parameters are needed to use the disk_total_space() function are mentioned below −

Sr.No Parameter & Description
1

directory(Required)

The directory that will be scanned.

Return Value

It returns the total number of bytes available on the total disk space as float value, or FALSE on failure.

PHP Version

The disk_total_space() function is available as part of core PHP 4.1.0 and work well with the PHP 5, PHP 7, PHP 8.

Example

In the below example we will see the basic usage of the PHP Filesystem disk_total_space() function by passing disk names as the parameter and it will return the total disk space available in bytes.

<?php
   echo disk_total_space("C:");
   echo "\n";
   echo disk_total_space("E:");
?>

Output

This will produce the following result −

277320036352
209714147328

Example

Using the below PHP code we will try to get the total disk space of the specified folder using the disk_total_space() function.

<?php
   // assign directory or folder here
   $directory = '/home/user/Documents';

   // get the total disk space of the specified folder
   $total_space = disk_total_space($directory);

   //print the total disk space
   echo "Total disk space in directory $directory: " . $total_space . " bytes";
?> 

Output

This will generate the below output −

Total disk space in directory /home/user/Documents: 245107195904 bytes

Example

Now we will create a program to find the total disk space of multiple directories. So for this we will create an array of directories and get the total disk space using disk_total_space() function and foreach loop.

<?php
   // assign directories or folders here
   $directories = ['/var/www/html', '/var/log'];

   // get the total disk space of each folder
   foreach ($directories as $dir) {
      $total_space = disk_total_space($dir);
      echo "Total disk space in directory $dir: " . $total_space . " bytes<br>";
   }
?> 

Output

This will lead to the following outcome −

Total disk space in directory /var/www/html: 245107195904 bytes
Total disk space in directory /var/log: 135506286782 bytes

Example

Now we will create a PHP program to handle the errors if an unwanted errors occur. Suppose the directory mentioned is not present so how we should handle this kind of error is explained in the below code.

<?php
   // non existent directory
   $directory = '/nonexistent/directory';

   //find the total disk space
   $total_space = disk_total_space($directory);

   //Handle the error
   if ($total_space === false) {
      echo "Error to get total disk space for directory: $directory";
   } else {
      echo "The total disk space in directory $directory: " . $total_space . " bytes";
   }
?> 

Output

The result of this PHP code is −

Error to get total disk space for directory: /nonexistent/directory

Note

  • Many operating systems can use this method but the directory path format (e.g., '/' on Unix-based systems, 'C:\' on Windows) may vary.
  • This method cannot be applied to remote files since the file to be examined needs to be accessible via the Filesystem of the server.

Summary

By becoming familiar with the disk_total_space() function, you can easily manage and keep an eye on the disc space in your PHP applications.

php_function_reference.htm
Advertisements