PHP Filesystem diskfreespace() Function
The PHP Filesystem diskfreespace() function is used to find out how much free space is on a disc or directory. This function is an alias of the disk_free_space() function.
Syntax
Below is the syntax of the PHP Filesystem diskfreespace() function −
float or integer diskfreespace(directory)
Parameters
The parameters are needed to use the diskfreespace function are mentioned below −
| Sr.No | Parameter & Description |
|---|---|
| 1 |
directory(Required) The directory that will be scanned. |
Return Value
If the diskfreespace() function is successful then it returns the number of free bytes. If there is an error so it returns FALSE.
PHP Version
The diskfreespace() function was first introduced as part of core PHP 4 and work well with the PHP 5, PHP 7, PHP 8.
Example
This is the basic example to show the usage of the PHP Filesystem diskfreespace() function. Check the sample of code below −
<?php // This is the root directory. $directory = "/"; $freeSpace = diskfreespace($directory); echo "Free space available in the root directory: " . $freeSpace . " bytes"; ?>
Output
This will generate the following result −
Free space available in the root directory: 129400332288 bytes
Example
In this below code we will try to find out the free space in the specified directory with the usage of the diskfreespace() function. Check the below code −
<?php
// Display the free disk space on drive C:
echo diskfreespace("C:");
// Output a new line for formatting
echo "\n";
// Display the free disk space on drive E:
echo diskfreespace("E:");
?>
Output
This will produce the following result −
224159571968 209571344384
Example
This example finds the free space in the specific directory mentioned. So after using the the diskfreespace() function the free space in bytes will be retrieved and displayed.
<?php // Mention directory path here $directory = "/var/www"; //Use diskfreespace() to get the free space of the above directory $freeSpace = diskfreespace($directory); // Echo or print the free space in bytes echo "Free space in /var/www: " . $freeSpace . " bytes"; ?>
Output
This will create the below outcome −
Free space in /var/www: 11686955416 bytes
Example
This example converts the free space in the root directory from bytes to megabytes for better readability and echo the result in MB.
<?php // Mention directory path here $directory = "/"; //Use diskfreespace() to get the free space of the above directory $freeSpace = diskfreespace($directory); // Convert in mega bytes (MB) $freeSpaceInMB = $freeSpace / (1024 * 1024); // Echo or print the free space in bytes echo "Free space in the root directory: " . $freeSpaceInMB . " MB"; ?>
Output
This will lead to the following outcome −
Free space in the root directory: 111455.765625 MB
Example
We includes error handling in his example. It outputs an error message and checks whether diskfreespace() returns FALSE, indicating an error, if the directory is not found.
<?php
// Mention directory path here
$directory = "/nonexistent";
//Use diskfreespace() to get the free space of the above directory
$freeSpace = diskfreespace($directory);
// Handle error here for nonexistent directory
if ($freeSpace === FALSE) {
echo "Error: Could not find the free space for the given directory.";
} else {
echo "Free space in ". $directory . ": " . $freeSpace . " bytes";
}
?>
Output
The result of this PHP code is −
Error: Could not find the free space for the given directory.
Notes
- A byte value is returned by this function. So you have the option to convert it to gigabytes (GB), megabytes (MB), or kilobytes (KB) to make it easier to understand.
- If the given directory is not there or there is an error, the function might not return the expected result.
Summary
Use the PHP diskfreespace() method to find out how much space is available on a disc or directory. You have to enter the path as an input for the directory or disc that you want to check.