dismiss Step into the future! Click here to switch to the beta php.net site
downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

dir> <chroot
[edit] Last updated: Fri, 28 Jun 2013

view this page in

closedir

(PHP 4, PHP 5)

closedirClose directory handle

Description

void closedir ([ resource $dir_handle ] )

Closes the directory stream indicated by dir_handle. The stream must have previously been opened by opendir().

Parameters

dir_handle

The directory handle resource previously opened with opendir(). If the directory handle is not specified, the last link opened by opendir() is assumed.

Examples

Example #1 closedir() example

<?php
$dir 
"/etc/php5/";

// Open a known directory, read directory into variable and then close
if (is_dir($dir)) {
    if (
$dh opendir($dir)) {
        
$directory readdir($dh);
        
closedir($dh);
    }
}
?>



add a note add a note User Contributed Notes closedir - [2 notes]
up
0
foo at bar dot com
12 years ago
About deleting a directory after doing a readdir/closedir on it... I'm not sure if this is the solution, but you could try to chdir("/"); before the rmdir to make absolutely sure you aren't standing in the directory (i.e trying to pull out the rug from under yourself).
up
-1
lester.k at virgin.com
5 years ago
The manual says that one should only call closedir with a parameter which is an open directory handle.

The manual usually lists warnings and errors generated by violating a "should" or "shouldn't", but doesn't for this case.

In fact, one gets the runtime error
   Warning: closedir(): supplied argument is not a valid Directory resource in whatever.php on line nn
irrespective of whether it's an already-closed directory handle or whether it's total junk.

[Different error messages would have spared me a little debugging. Sigh. It would be nice if the manual said.]

 
show source | credits | stats | sitemap | contact | advertising | mirror sites