关于make出空页面的问题?
发布于:2022-01-17 09:50:54
#1 cisway
make对数据量的支持如何,
在实际开发过程中碰到一个问题
就是如果数据量比较大的话,make出来是空页面
例如2个动作,
function makeHtml(){
spClass('spHtml')->make(array('adult','index'),'/themes/.../index.html');
}
function index(){ // 这里是首页
....
此处有N个循环
...
//print_R($contentMsg);
$this->contentMsg = $contentMsg;
$this->display("index.html");
}
}
如果走c=adult&a=index
只是执行比较缓慢,但能展示页面
但如果走c=adult&a=makeHtml
如果有2个循环,能make出正确的页面
如果多加1,2个循环进入,make出来的页面为空
请问如何解决这个问题,是make这个功能的问题,还是哪个地方设置的问题?
打印print_R($contentMsg);make的时候也没有任何数据显示
2011-05-12 09:51:05
#2 jake
用makeAll,另外,make主要功能是通过PHP访问该页面然后再生成静态文件,所以这个过程里面有任何的阻碍都会影响到make
2011-05-12 12:30:02
#3 cisway
用makeAll,另外,make主要功能是通过PHP访问该页面然后再生成静态文件,所以这个过程里面有任何的阻碍都会 ...
jake 发表于 2011-5-12 12:30 
makeAll效果比make稍微好一些,如果数据再大点仍然出现空页面,
makeAll对数据查询的时间是不是有限制?
打入模版的数据生成时间过长是不是就会出现这个问题?
因为做过这样的测试,打入3段循环,能生成静态,再加一段跟上面循环一模一样的循环,页面为空
或者同样的循环,可能现在能生成页面,或许过一会生成就是空页面
因为如果查询出来的数据如果为空的话,至少模版页面应该仍然生成啊
而且前台能提示:
开始生成...
页面生成完毕!
但为空
2011-05-13 14:26:07
#4 jake
SP没有做限制,不过PHP本身有运行时间的限制。
我这里给个建议是,一般批量生成文件这种大批量的操作,建议是通过队列模式来进行,而避免直接一次运行,否则很容易出现问题
2011-05-13 16:59:00