The idea: show progress for process that is running in the background
Execution: takes advantage of the fact that JavaScript is loaded in parallel
ignore_user_abort(); set_time_limit(3600); session_write_close(); @ob_end_clean(); @ob_end_flush(); @header('Content-Encoding: text/html'); echo 'I am doing some very very very long job
'; $taskId = uniqueId(); touch($taskId); echo ''; echo 'Doing it '; while (file_exists($taskId)) { echo '|'; sleep(5); } echo '
'; /** * Job done, do something else */
P.S. Dont forget to unlink the file when the background task is done
Simple as that.