PHP - Direct I/O dio_close() Function



The PHP Direct I/O dio_close() function is used to close an open file descriptor that was initially opened using the dio_open() function. This is a part of the low-level file I/O operation interface provided by the Direct I/O routines.

Syntax

Below is the syntax of the PHP Direct I/O dio_close() function −

void dio_close(resource $fd);

Parameters

This function accepts $fd parameter which is the file descriptor resource that has to be closed. It is given by the dio_open() function.

Return Value

The dio_close() function returns does not return any value.

PHP Version

First introduced in core PHP 4.2.0, the dio_close() function continues to function easily in PHP 5.1.0.

Example 1

First we will show you the basic example of the PHP Direct I/O dio_close() function to close a file which is opened using dio_open() function.

<?php
   /// Open the file
   $fd = dio_open('/PHP/PhpProjects/myfile.txt', O_RDONLY);
   
   // operations to perform

   // Close the file
   dio_close($fd);
   
   echo "File has been closed!!!";
?>

Output

The above code will result something like this −

File has been closed!!!

Example 2

In the below PHP code we will try to use the dio_close() function to close the opened file after performing the write operation using dio_write() function.

<?php
   // Open the file for writing
   $fd = dio_open('/PHP/PhpProjects/myfile.txt', O_WRONLY | O_CREAT);
   
   // Write data to the file
   dio_write($fd, "Hello, World!");
   
   
   echo "Message is written successfully!!\n";
   
   // Close the file
   dio_close($fd);
   echo "File is closed after performing operation!";
?> 

Output

After running the above program, it generates the following output −

Message is written successfully!!
File is closed after performing operation!

Example 3

Now the below code handle error while using dio_close() function, and print the error message if there is an error occurs.

<?php
   // Open the file
   $fd = dio_open('/PHP/PhpProjects/myfile.txt', O_RDONLY);
   
   if ($fd === false) {
       die('Failed to open file');
   }
   
   // Perform file operations here
   
   // Close the file
   if (dio_close($fd) === false) {
       echo 'Failed to close file';
   } else {
       echo 'File closed successfully';
   }
   
?> 

Output

This will create the below output −

File closed successfully

Example 4

In the following example, we are using the dio_close() function to get the fetch the primary IP address with the number of redirects.

<?php
   // Open the binary file
   $fd = dio_open('/PHP/PhpProjects/encrypted_file.bin', O_RDONLY);
   
   // Read data from the file
   $data = dio_read($fd, 1024);
   
   
   // print the data
   echo "Binary Data is as follows: \n";
   echo $data;
   
   
   // Close the file
   dio_close($fd);

   echo "\nFile is closed successfully!!"
?> 

Output

When the above program is executed, it will produce the below output −

Binary Data is as follows:
M/]'w???p??????4W?????????S?q~?????e;??vM?&;3??r|?/(xd??]???]??sL???\e-.?i#j??I_d`z)?p?u?o??i?	:??????h?Z????PT???#?i?[?????o????z?W?? y?p????I???on??s?????|s???Mq#?c??k?|G?v???????C*X???%/??B??
File is closed successfully!!
php_function_reference.htm
Advertisements