2016-12-30 1 views
1

Я просто хочу отобразить файл Excel, существующий на моем жестком диске, в виде веточки.Показать файл excel с Liuggio/Excelbundle и Symfony2

Я использую Symfony [2,5] и «Liuggio/Excelbundle»

Этот трюк работает хорошо, но я хочу, чтобы добавить его в мой взгляд.

public function newAction() 
    { 
     $filename = 'filename.xlsx'; 
     $reader = \PHPExcel_IOFactory::createReaderForFile($filename); 
     $excel = $reader->load($filename); 
     $writer = \PHPExcel_IOFactory::createWriter($excel, "HTML"); 

     $writer->generateStyles(); 
     $writer->generateSheetData(); 

// this doesnt work.. 
     return $this->render('MonextReportingBundle:Default:excel.html.twig', array(
      'excelHtml'=>$writer 
    )); 

И в моем excel.html.twig:

{{ excelHtml | raw }} 

Catchable фатальная ошибка: Объект класса PHPExcel_Writer_HTML не может быть преобразован в строку

Большое спасибо, ребята! Извините мой английский ..

+0

Вы попробовали 'excelHtml.generateSheetData | raw'? – Maerlyn

+0

@Maerlyn отлично работает! спасибо большое –

ответ

1

HTML-писатель PHPExcel не имеет toString(), поэтому ваша попытка не сработала.

У этого есть, однако, метод под названием generateSheetData, который, кажется, делает то, что вы хотите. Используйте его следующим образом:

{{ excelHtml.generateSheetData | raw }} 
+0

Maerlyn, вы знаете, как установить Max column? Я хочу отображать только 14 столбцов в моей таблице HTML. Я не знаю, как реализовать фильтр внутри моей функции newAction. Большое спасибо. –

+0

@SimonDelaunay, если у вас есть вопрос, задайте вопрос (http://stackoverflow.com/questions/ask) – Maerlyn

+0

https://stackoverflow.com/questions/41955312/phpexcel-set-max-column –

Смежные вопросы