Я написал PHP-скрипт, который отправляет запрос в поисковую систему, получает доступ к обслуженным результатам, извлекает некоторые детали из результатов и затем печатает их в более полезной форме.
Все работает хорошо, но кое-что, что я обнаружил случайно, заключается в том, что вызов echo или print во время ожидания потоковой передачи данных может также привести к потоковой передаче.В частности, имеется несколько страниц результатов, поэтому я захожу на первую страницу, читаю и перепечатываю содержимое, затем перехожу на следующую страницу и, ожидая загрузки следующей страницы, содержимое предыдущей страницы становится видимым вбраузер.
Я не понимаю, почему это происходит так непоследовательно.Иногда перед переходом на следующую страницу будет напечатана ровно одна страница, иногда меньше, а иногда и больше.Затем, когда я делаю в основном то же самое потом (читай на странице, на которую указывает каждый результат), вывод практически не передается, перерисовывается каждую минуту или около того.
Я использую file_get_contents($url)
для извлечениясодержимое и вызов функции с echo
для печати того, что было загружено до сих пор.Является ли это поведение потоковой печати функцией браузера и не зависит от того, что я пишу на PHP?Если нет, то как можно лучше контролировать?