我试图理解我从这段代码中得到的部分输出:
<?php
class DirectoryReader extends DirectoryIterator
{
function __construct($path)
{
parent::__construct($path);
}
function current()
{
return parent::getFileName();
}
function valid()
{
if(parent::valid())
{
if (!parent::isDir())
{
parent::next();
return $this->valid();
}
return TRUE;
}
return FALSE;
}
}
try
{
$it = new DirectoryReader('C:\wamp\www');
while($it->valid())
{
echo $it->current().'<br />';
$it->next();
}
}
catch(Exception $e)
{
echo 'No files Found!<br />';
}
?>
在代码中,您可以看到我将此路径传递给构造函数:C:\wamp\www
,
我不明白的是:在我看到所有文件夹之前,第一行是.
,第二行是..
,然后我可以看到文件夹名称,例如:
.
..
someFolder
someOtherFolder
我知道.
显示当前文件夹并..
返回文件夹层次结构,但我不明白为什么它会先打印.
然后..
再打印文件夹?我真的很想了解这个迭代器的动作,如果有人可以帮助我理解我将非常感激。