1

我正在使用 Yii 框架(http://www.yiiframework.com)及其用于生成 Excel 文件的 YiiReport 扩展名在网页中工作。我已经使用这个扩展几个星期了,它运行良好。但是,我已经将一些文件上传到网络的在线版本,现在在线版本在尝试使用 YiiReport 时无法正常工作(但是,本地版本可以正常工作)。我想我没有改变任何与 YiiReport 扩展直接相关的东西,所以我无法解释为什么它不起作用。与扩展相关的代码非常简单:

$r = new YiiReport(array('template'=> $template));

$r->load(array(
    array(
        'id' => 'ong',
        'data' => array(
            'name' => $nom
        )
    ),
    array(
        'id'=>$id,
        'repeat'=>true,
        'data'=>$data,
        'minRows'=>2
    )
  )
);

echo $r->render('excel5', $filename);

网页崩溃,就好像代码所在的 PHP 文档没有找到或无法访问一样。问题与最后一行代码有关:如果注释了这一行,页面不会崩溃(当然不会生成Excel文件,但至少不会崩溃);如果通过回显打印一个简单的字符串,则该字符串显示在屏幕上...问题似乎专门来自“$r->render()”函数,但我不明白为什么。我认为扩展程序的位置正确,因为在访问以前的扩展程序的功能时页面不会崩溃,但我找不到会发生什么,我已经研究了几天......

关于会发生什么的任何想法?

提前感谢您的时间和精力!:)

4

1 回答 1

1

我猜你的在线版本的 PHP 没有你的开发服务器那么多的内存。我已经看到 Excel 生成器出现奇怪的错误,它们通常似乎与内存限制有关。

于 2013-08-20T03:51:07.190 回答