CakePHP excel下载故障排除

时间:2013-06-12 05:27:12

标签: php cakephp

我正在尝试按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配置下载文件?我不知道从哪里开始。

1 个答案:

答案 0 :(得分:3)

在蛋糕2.x中输出不同类型的内容现在很容易,而且是“小菜一碟”:)

可以轻松地将视图类切换到您需要的任何输出(json,xml,csv,..)。 在你的情况下,我会使用https://github.com/josegonzalez/CsvView

$this->viewClass = 'CsvView.Csv';

并按照插件自述文件中的说明导出数据。