Quantcast
Channel: Webkul Blog
Viewing all articles
Browse latest Browse all 5537

Programmatically Download File in Magento 2

$
0
0

In this blog I will show you, how you can programmatically download file in Magento 2.

Please check the below code,

<?php
namespace Webkul\Csv\Controller\Index;

use Magento\Framework\App\Action\Action;
use Magento\Framework\App\Action\Context;
use Magento\Framework\App\Filesystem\DirectoryList;

class GetFile extends Action
{
    public function __construct(
        Context $context,
        \Magento\Framework\App\Response\Http\FileFactory $fileFactory
    ) {
        $this->fileFactory = $fileFactory;
        parent::__construct($context);
    }
 
    public function execute()
    {
        $filepath = 'export/customerlist.csv';
        $downloadedFileName = 'CustomerList.csv';
        $content['type'] = 'filename';
        $content['value'] = $filepath;
        $content['rm'] = 1;
        return $this->fileFactory->create($downloadedFileName, $content, DirectoryList::VAR_DIR);
    }
}

Here, $filepath is the path of the file under var/ folder. $downloadedFileName is the file name when it get downloaded on client side. If $content[‘rm’] is equal to 1 then the file will be deleted from server after it has been downloaded.

If you want to know how to create a csv file then please check out the blog “How to Create a CSV file in Magento 2”.

Please comment if you face any issue or if there is any confusion. Thanks for checking out the blog.


Viewing all articles
Browse latest Browse all 5537

Trending Articles