2016-05-01 2 views
-2

Как я могу вернуть значение без прерывания цикла, Цель этого - вернуть значение приращения цикла for для представления «попыток», которые я хочу вернуться к просмотру , например, прочитайте JSON, который предпринимает попытки, которые я хочу визуально отобразить.Как вернуть значение без разрыва цикла

Пример того, что я пытался

for($i =0; $i< 15; $i++){ 
    numOfAttempts($i); 
    try{ 
     file_get_contents('url') 
    }catch(){} 
} 

public function numOfAttempts($i){return $i;} //Return the attempt count to view 
+1

Мне не совсем понятно, что вы хотите. Цикл 'for' не будет нарушен, так как' return' выполняется внутри другой функции. –

+0

Да, я знаю, что это ломается, я хочу отобразить переменную $ i в реальном времени, когда она пытается прочитать file_get_contents. – Eric

ответ

0

вы не можете сделать это в сыром PHP. Это процесс на стороне сервера. Он начинается, это работает, заканчивается. Результаты отправляются в браузер. смотрите здесь обходные:

http://www.htmlgoodies.com/beyond/php/show-progress-report-for-long-running-php-scripts.html

и здесь

Show progress for long running PHP script

также РНР один поток, вы можете эмулировать многопоточность, хотя. google php многопоточность или посмотрите на http://robo.li

хотя вы можете, например, прочитать часть файла (или попробовать URL-адрес), а затем отчитываться перед пользователем, а затем перейти на другой запуск, но это будет не параллельный процесс , вам нужно будет разместить свой дисплей внутри своей петли

Смежные вопросы