Я пытаюсь обновить информацию на переднем конце во время обработки на заднем конце. Для этой цели я использую функцию php flush.Данные флеша в сложном цикле php
Моего код
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 функции
Любой вид помощи будет оценено.
Просто прочитайте несколько предостережений здесь - http://php.net/manual/en/function.flush.php – Legionar