<?php
class DirectoryIterator extends SimpleIterator {
var $dir_path;
var $dir_handle;
function DirectoryIterator($dir_path) {
parent::SimpleIterator(SO_STRICT);
$this->init('name');
$this->dir_handle = opendir($this->dir_path);
}
function next() {
$elem_name = readdir($this->dir_handle);
if ( $elem_name !== FALSE ) {
$this->set('name',$elem_name);
return TRUE;
} else {
return FALSE;
}
}
function reset() {
rewind($this->dir_handle);
}
function size() {
$this->reset();
$size = 0;
while ( $this->next() ) {
$size++;
}
return $size;
}
}
?>
|