【发布时间】:2016-04-25 11:07:38
【问题描述】:
我正在尝试更新前端的信息,而后端正在进行处理。为此,我使用了 php flush 函数。
我的代码是
foreach ($csv_array as $row) {
$varint=$varint+1;
$curr_id = $row['Item'];
$toret['row_num']=$varint;
$toret['curr_url']=$curr_id;
echo json_encode($toret);
flush();
$this->scrape_one_id($curr_id);
$value['arrow_id']=$curr_id;
$this->ahm->insert_new_id($curr_id);
$this->ahm->insert_current($value);
}
我已经尝试过很多方式,但它只发回第一个回显,并在完成执行后发送休息。如果 scrape_one_id 函数被注释,它工作正常。
我尝试过的一些方法是:
foreach ($csv_array as $row) {
$varint=$varint+1;
$curr_id = $row['Item'];
$toret['row_num']=$varint;
$toret['curr_url']=$curr_id;
echo json_encode($toret);
if( ob_get_level() > 0 ) ob_flush();
$content = ob_get_clean();
flush();
if( ob_get_level() > 0 ) ob_clean();
$this->scrape_one_id($curr_id);
$value['arrow_id']=$curr_id;
$this->ahm->insert_new_id($curr_id);
$this->ahm->insert_current($value);
}
没有 scrape_one_id 功能也可以正常工作
我们将不胜感激。
【问题讨论】:
-
在这里阅读一些注意事项 - php.net/manual/en/function.flush.php