Symfony2 как экспортировать данные базы данных в csv

#php #symfony #csv #doctrine

#php #symfony #csv #доктрина

Вопрос:

Я хочу экспортировать данные базы данных в «CSV» и загрузить файл «CSV», как только я нажму на кнопку.

В настоящее время в «контроллере» я извлекаю все необходимые данные из базы данных, используя для этой цели «репозиторий».

 $em       = $this->getDoctrine()->getManager();    
$entities = $em->getRepository('SkerpInventoryBundle:InventoryMaster')->findAllIndex();
  

Они $entities будут содержать все данные, и я хочу экспортировать их в «CSV».

В ветке у меня есть кнопка для загрузки файла «CSV».

Ниже приведен код кнопки в twig —

 <a href="{{ path('location') }}">Export as Excel</a>
  

Ответ №1:

В чем проблема??

Код для экспорта:

  use SymfonyComponentHttpFoundationResponse;
  

В контроллере:

     $data = array(1,2,3,4);
    $response = new Response($data);
    $response->headers->set('Content-Type', 'application/octet-stream');
    $response->headers->set('Content-Disposition', 'attachment; filename=filename.csv');
    return $response;