Я сделал модуль для загрузки изображений в интерфейсе. Magento 2 сохраняет файлы особым образом. Например:
- загрузка файла –
file.png
, - путь к файлу -
pub/media/[module_folder]/f/i/file.png
.
Как получить все файлы из [module_folder]
?
Я сделал модуль для загрузки изображений в интерфейсе. Magento 2 сохраняет файлы особым образом. Например:
file.png
,pub/media/[module_folder]/f/i/file.png
.Как получить все файлы из [module_folder]
?
Попробуйте следующее: используйте класс directorylist, чтобы получить путь, и класс файла, чтобы прочитать каталог: D
public function __construct(
\Magento\Framework\Filesystem\DirectoryList $directoryList,
\Magento\Framework\Filesystem\Driver\File $driverFile,
LoggerInterface $logger)
{
$this->directoryList =$directoryList;
$this->driverFile = $driverFile;
$this->logger = $logger;
}
public function getAllFiles($path = '/import/') {
$paths = [];
try {
//get the base folder path you want to scan (replace var with pub / media or any other core folder)
$path = $this->directoryList->getPath('var') . $path;
//read just that single directory
$paths = $this->driverFile->readDirectory($path);
//read all folders
$paths = $this->driverFile->readDirectoryRecursively($path);
} catch (FileSystemException $e) {
$this->logger->error($e->getMessage());
}
return $paths;
}