Rekursiv Dateien und Ordner auslesen
Rekursiv Dateien und Ordner auslesen
Man kann aus Symfony die Iterator-Klasse nutzen:
namespace Vendor\extensionName\Domain\Repository;
#namespace Symfony\Component\Finder\Iterator;
use RecursiveIteratorIterator;
use RecursiveArrayIterator;
class extensionName extends \TYPO3\CMS\Extbase\Persistence\Repository
{
private $dateien;
public function getData() {
$ordner = $this->lConf['ordner_pdfdoc']; //(Flexform)
$dateien = $this->iterateDir($ordner);
ksort($dateien);
return $dateien;
}
public function iterateDir($sPath) {
$aRes = array();
foreach(new RecursiveIteratorIterator($sPath) as $oItem) {
if($oItem->isDir()) {
(!$oItem->isDot() ? $aRes[$oItem->getFilename()] = $this->iterateDir($oItem->getPathname()):0);
continue;
}
$aRes[] = $oItem->getFilename();
}
return $aRes;
}
}