获取文件存储中的PNG文件列表,不包括_processed_文件夹

时间:2017-07-03 16:21:28

标签: typo3 extbase fal

正如主题所说,我只需要获得未经处理的 PNG文件。

我目前的做法如下:

$fileExtensionFilter = $this->objectManager->get(FileExtensionFilter::class);
$fileExtensionFilter->setAllowedFileExtensions('png');

$storage->addFileAndFolderNameFilter([$fileExtensionFilter, 'filterFileList']);
$availablePngFiles = $storage->getFileIdentifiersInFolder($storage->getRootLevelFolder(false)->getIdentifier(), true, true);

foreach ($availablePngFiles as $pngFile) {
    if(!$storage->isWithinProcessingFolder($pngFile)) {
        $pngFileObject = $storage->getFile($pngFile);    
    }
}

所以,它有效,但我想避免不必要的isWithinProcessingFolder()查找并只获取原始的未处理文件,这将显着减少循环次数。

1 个答案:

答案 0 :(得分:0)

TYPO3核心7.6.19仅附带两个过滤器:FileNameFilter "UPDATE userlogs AS UpdateTable INNER JOIN ( SELECT JoinTable.id FROM userlogs AS JoinTable WHERE JoinTable.uid = '$userId' ORDER BY uid DESC LIMIT 1) AS source ON source.id = UpdateTable.id SET LastLogout = now()"; ,实际上是一个"隐藏文件过滤器"。

您可以在那里编写自己的文件过滤器和过滤器,但这比保留这两行代码更有效。