Joomla - 用php =>生成的代码很多空白页

时间:2013-04-26 20:28:42

标签: php joomla

我使用Jumi将自定义php插入到joomla中。

function generateTR($tr_nr) {
    $html="";
    for ($i=0; $i<$tr_nr; $i++) {
        $m=memory_get_usage();
        $html.="<tr><td colspan='5'>$i - $m</td></tr>";
    }
    return $html;
}


echo "<table><tbody>".generateTR(20000)."</tbody></table>";

如果我通过jumi =&gt;运行此代码(generateTR(20000))我得到空白页面。 如果我通过访问php file =&gt;直接运行它它正在显示表格。

如果将行数更改为2000 =&gt; generateTR(2000)=&gt;它将通过jumi在joomla文章中显示OK表。

为什么我增加html代码的数量=&gt; joomla + jumi无法处理吗? 我也尝试了sourcerer而不是jumi =&gt;同样的问题。

有没有解决方案?

感谢。

编辑: 我试图将max_execution_time增加到180秒;还有memory_limit到2000M

EDIT2: 日志中没有错误......

error_reporting(E_ALL | E_STRICT);
ini_set("display_errors", 1);

得到了一些错误但与该问题没有关系...因为当tr行很少时,错误是相同的,并且表格显示正常。

2 个答案:

答案 0 :(得分:0)

在开头添加

set_time_limit(0);

答案 1 :(得分:-1)

空白页面的原因是“System - SEF”插件。 这是错误 - http://joomlacode.org/gf/project/joomla/tracker/?action=TrackerItemEdit&tracker_item_id=24865

您将在Joomla 1.5中获得空白页。

在Joomla 2.5中你会得到“500 - 达到PHP正则表达式限制(pcre.backtrack_limit)”

这是同样的错误。

2个解决方案:

1)如果您不需要SEF,请禁用“System - SEF”插件

2)如果你需要SEF -

添加

ini_set('pcre.backtrack_limit',1000000);

ini_set('pcre.backtrack_limit',1000000);
ini_set('pcre.recursion_limit',1000000);

到模板的index.php。