我正在尝试按this solution将数据导出到Excel,但是当我点击下载链接时,它只是说“服务器错误。可能需要维护......等等”
我必须从教程中更改的唯一内容是Csv帮助程序的名称。本教程指定“Csv.php”,但我必须将其命名为“CsvHelper.php”。当我打印转到此视图的变量时,它会显示该数组。但是,当我删除它并且只是将代码与上面的链接帖子中显示的完全相同时,我收到服务器错误
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.
这些是我必须按照“教程”
的指示添加到我的服务器的文件//Helper
/App/View/Helper/CsvHelper.php
//Vendor
/App/Vendor/excel/PHPExcel.PHP
/App/Vendor/excel/PHPExcel/ //contains the rest of PHPExcel
//view
/App/View/Orders/download.ctp //Tutorial specifies /App/View/Homes/download.ctp so I made sure to change the link accordingly in the view which actually "links" to this
正如我之前提到的,当我在download.ctp上打印数组时,请参阅此
Array ( [0] => Array ( [Order] => Array ( [id] => 1 [userid] => 2 [order_status] => completed [email] => test@gmail.com [total] => 8.00 ) )
我的数组结构与教程
的结构相匹配$orders[0]['Order'];
我是否需要使用CakePHP配置下载文件?我不知道从哪里开始。
答案 0 :(得分:3)
在蛋糕2.x中输出不同类型的内容现在很容易,而且是“小菜一碟”:)
可以轻松地将视图类切换到您需要的任何输出(json,xml,csv,..)。 在你的情况下,我会使用https://github.com/josegonzalez/CsvView。
$this->viewClass = 'CsvView.Csv';
并按照插件自述文件中的说明导出数据。