currentDir . "/" . $fse->getName() . "\n"; break; case ($fse instanceof MyDirectory): echo $this->currentDir . "/" . $fse->getName() . "\n"; $saveDir = $this->currentDir; $this->currentDir = $this->currentDir . "/" . $fse->getName(); $children = $fse->getChildren(); foreach ($children as $entry) { $entry->accept($this); } $this->currentDir = $saveDir; break; default: throw new Exception("Not yet implemented yet here: " . var_export($fse, true)); break; } } }