/** * Returns true if file is valid. * Valid Files: Directories and Files not beginning with a "." (dot). * * @todo make it more flexible to handle hidden dirs on demand etc, * win/*nix compat * * @return boolean if current file entry is vali */ public function valid() { if (parent::valid()) { if (parent::isDot() || parent::isDir() && strpos(parent::getFilename(), '.') === 0) { parent::next(); // zum nächsten eintrag hüpfen return $this->valid(); // nochmal prüfen } return true; } return false; }
/** * Recursive directory function. * * @param RecursiveDirectoryIterator $iterator */ protected function _recurseDirectory($iterator) { while ($iterator->valid()) { if ($iterator->isDir() && !$iterator->isDot()) { if ($iterator->hasChildren()) { $this->_recurseDirectory($iterator->getChildren()); } } elseif ($iterator->isFile()) { $path = $iterator->getPath() . '/' . $iterator->getFilename(); $pathinfo = pathinfo($path); if ($this->_isPhpFile($path)) { $this->addFile($path); } } $iterator->next(); } }
// outName returns the hml direct. $resourceUriRoot = @$_REQUEST['resourceUriRoot']; // URI prefix for the resources upload with forms. //if no style given then try default, if default doesn't exist we our put raw xml $importData = array(); $info = new SplFileInfo($formImportDir); $i = 0; $xmlForms = array("form" => array(), "resource" => array()); if ($info->isDir()) { $iterator = new RecursiveDirectoryIterator($formImportDir); while ($iterator->valid()) { if ($iterator->isFile()) { $ext = pathinfo($iterator->getPathname(), PATHINFO_EXTENSION); if ($ext == "xml") { // echo $prefix,$j," import ",$dirIterator->getPathname(), "<br>\n"; $xmlForms["form"][$iterator->getFilename()] = $iterator->getPathname(); } else { $filepath = preg_replace("/" . preg_replace("/\\//", "\\\\/", HEURIST_UPLOAD_DIR) . "/", "/", $iterator->getPathname()); // echo $prefix,$j," resource ".$dirIterator->getFilename()." has path ".$filepath, "<br>\n"; $xmlForms["resource"][$iterator->getFilename()] = $filepath; } } else { if ($iterator->isDir() && $iterator->hasChildren(false)) { // echo $i,pathinfo($iterator->getPathname(),PATHINFO_FILENAME), "<br>\n"; processChildDir($iterator->getChildren(), $i . "-"); } } $iterator->next(); $i++; } } else {