Yii2 如何";“实时”;从控制器到视图的回显
我有一个控制器,它执行一些广泛而耗时的操作,我想向用户展示它的部分结果;我想我必须处理“进度条”,我看过一些例子和插件,但它们远远超出了我的知识范围(目前!) 现在,我很满意以一种简单的方式将部分结果“呼应”到视图中 我的控制器:Yii2 如何";“实时”;从控制器到视图的回显,yii2,Yii2,我有一个控制器,它执行一些广泛而耗时的操作,我想向用户展示它的部分结果;我想我必须处理“进度条”,我看过一些例子和插件,但它们远远超出了我的知识范围(目前!) 现在,我很满意以一种简单的方式将部分结果“呼应”到视图中 我的控制器: .. foreach ($response->messages as $msg) { .. ..(do something).. echo (partial results)."<br>"; } 。。 foreach($response
..
foreach ($response->messages as $msg) {
..
..(do something)..
echo (partial results)."<br>";
}
。。
foreach($response->messages as$msg){
..
……做点什么。。
回波(部分结果)。“
”;
}
所以问题是,视图只在循环结束时渲染,经过长时间的空白屏幕等待后,部分结果立即显示
我希望我的“回声”在foreach循环中显示为“实时”。这是一种方法吗?您可能需要一个带
foreach($response->messages as$msg){
//……做点什么。。
回波(部分结果)。“
”;
ob_flush();
冲洗();
}
出口
请注意,您应该在方法末尾调用exit
——因为2.0.14 Yii不允许echo i控制器,所以您需要手动停止进一步的响应处理
foreach ($response->messages as $msg) {
// ..(do something)..
echo (partial results) . "<br>";
ob_flush();
flush();
}
exit;