gpt4 book ai didi

filesystems - 如何从 magento 2 中的文件夹和子文件夹中获取所有文件

转载 作者:行者123 更新时间:2023-12-04 18:01:02 26 4
gpt4 key购买 nike

我制作了一个用于在前端上传图像的模 block 。 Magento 2 以一种特殊的方式保存文件。例如:

  • 上传文件 - file.png ,
  • 文件路径 - pub/media/[module_folder]/f/i/file.png .

  • 如何从 [module_folder] 获取所有文件?

    enter image description here

    最佳答案

    尝试以下操作,使用 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;
    }

    关于filesystems - 如何从 magento 2 中的文件夹和子文件夹中获取所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35429107/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com