PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

getcwd> <dir
Last updated: Fri, 10 Oct 2008

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
lester.k at virgin.com
22-Feb-2008 07:27
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.]
foo at bar dot com
24-Nov-2000 07:35
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).

getcwd> <dir
Last updated: Fri, 10 Oct 2008
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites