|
|
|
| Добрый день.
А как сделать так чтобы выводилось по очереди инфа от скрипта.
т.е. если есть что-то типа такого кода
$i=0;
while($i>10)
{
echo $i; // тут нужно вывести браузеру переменную i каждый раз. но вывести как ток начался цыкл
$i++;
}
Вывести браузеру каждый новый цикл.
не все сразу а по очереди.
когда скрипт работает долго, то он выводит по очереди все, а тут нужно контролировать этот вывод. | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 20:17)
| | не понял ничерта но мб:
$i=0;
do
{
echo $i; // тут нужно вывести браузеру переменную i каждый раз. но вывести как ток начался цыкл
$i++;
} while($i>10)
|
| |
|
|
|
|
|
|
|
для: sl1p
(10.09.2010 в 20:22)
| | после того как скрипт отработал он выводит результат.
а мне нужно чтобы он выводил результат после прохождения определенного промежутка кода.
т.е. скрипт еще не отработал но на определенном промежутке кода вывел результат. | |
|
|
|
|
|
|
|
для: sl1p
(10.09.2010 в 20:22)
| | разница лишь в том, что Ваш скрипт выведет нолик.
а скрипт тредстартера - вообще ничего не выведет.
И тот и другой сделают это по очереди.
Поскольку "выполнить вывод по очереди" в русском языке означает "выполнить вывод в строго определенной последовательности". | |
|
|
|
|
|
|
|
для: Trianon
(10.09.2010 в 20:25)
| | $i=0;
while($i<10)
{
echo $i;
а тут такая команда типа "вывести на экран тут же результат и продолжить выполнения скрипта"
$i++;
} | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 20:30)
| | 0123456789 | |
|
|
|
|
|
|
|
для: Trianon
(10.09.2010 в 20:35)
| | Trianon,
я знаю результат скрипта.........
мне нужно чтобы он выводил по очереди!
сначала 0 потом продлжил цикл потом 1 и продолжил цикл и все по очереди. выводил это значит в прямом смысле. на экран
это элементарный скрипт, про100 будет что-то похожее но намного больше кода, где и парсеры есть и т.д. | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 20:38)
| | вы бред какойто несёте) | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 20:38)
| | он так и делает | |
|
|
|
|
|
|
|
для: Trianon
(10.09.2010 в 20:25)
| | $i=0;
while($i<10)
{
echo $i;
а тут такая команда типа "вывести на экран тут же результат и продолжить выполнения скрипта"
$i++;
} | |
|
|
|
|
|
|
|
для: Trianon
(10.09.2010 в 20:25)
| | код ТС тоже выведет нолик:) | |
|
|
|
|
|
|
|
для: sl1p
(10.09.2010 в 20:40)
| | код в начале темы не выведет ничего.
Но дело не в этом.
Дело в том, что тредстартер не может спросить так, чтоб было понятно не только мне, но и, скажем, Вам. | |
|
|
|
|
|
|
|
для: Trianon
(10.09.2010 в 20:47)
| | Trianon, посмотрите мой скрипт #2, он правельный. про100 перепутал < и >.
дело вобше не в скрипте. | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 20:50)
| | ага.
я уже второй раз "не понял" лексему про100
Объясните, будьте добры, какого хрена Вы применяете непонятные слова, при чем намеренно? | |
|
|
|
|
|
|
|
для: Trianon
(10.09.2010 в 20:52)
| | >какого хрена
Куда ты дел Trianon'а? | |
|
|
|
|
|
|
|
для: sl1p
(10.09.2010 в 20:40)
| | sl1p, вы не поняли.
У вас в мозгах застряла что команда "echo" - это команда вывода на кран.
да так оно и есть, но прежде чем вывести на экран, он сначала отработает а потом выведет все сразу.
т.е. сначала сгенерирует строку 0123456789 а потом по завершению скрипта выведет эту строку.
а мне нужно чтобы вывел на экран сразу как тока появилась команда echo,
а потом пошел дальше выполнять скрипт.
т.е. 0 пошел дальше, 1 пошел дальше, и т.д. но без перезагрузки страницы.
ПС. надеюсь даже умственно отсталые поняли мою мысль. | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 20:49)
| | А что Вы ругаетесь, интересно?
Почему это умственно отсталый тот, кто должен понять мысль, а не тот, кто её таковой формулирует? | |
|
|
|
|
|
|
|
для: Trianon
(10.09.2010 в 20:51)
| | я вас не называл умственно отсталыми.
давайте не будем сорится и писать только по теме. | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 20:52)
| | поведения скрипта, которое Вы ожидаете, с гарантией добиться нельзя.
Так устроен протокол, по которому идет вывод результата.
Вывод может быть задержан вплоть до завершения работы скрипта.
Максимум - можно попытаться создать предпосылки.
с помощью "\r\n", flush() и ob_flush() | |
|
|
|
|
|
|
|
для: Trianon
(10.09.2010 в 20:56)
| | Насколько я понимаю, сам браузер решает - какие куски брать, он ведь не перекачивает пакетами по 1-му байту? Или я не прав? | |
|
|
|
|
|
|
|
для: nikita2206
(13.09.2010 в 15:35)
| | там много кто решать может.
И сервер, и прокси (при чем не один), и браузер.
Стоит кому-то решить, что стоит поднакопить данных, и хлоп, буферизация имеет место быть. | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 20:49)
| | что бы Вас поняли даже умственно отсталые, расскажите, что Вы пытаетесь сделать, чего хотите добиться.
вы же пока привели простейший пример из учебника | |
|
|
|
|
|
|
|
для: Slo_Nik
(10.09.2010 в 20:54)
| | Slo_Nik, пожалуй так и надо было делать.
я делаю чекер ссылок.
там много фильтров(функций), по внешним факторам по внутренним.
и ссылок подряд может быть 200-300.
зайдет человек, будет юзать чекер, а он грузится 5-7 минут. ну не дело же это. закроет и уйдет.
а если выводить по очереди то все нормально будет.
а вот как вывести по очереди? чтобы не обращаться к скрипту по нескольку раз?
вот и нужно выводить по очередно. а как - это вы мне должны помочь =)
извините если что.
если это не выполнимо.
то буду юзать ajax, но тогда будет много обращений к скрипту, что не есть гуд. | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 21:01)
| | >а как - это вы мне должны помочь
ну я Вам ни чего не должен, надеюсь :):):):):)
ну и пусть выполняется некоторое время, в процесе выполнения выведите предупреждение пользователю, что выполнение скрипта может занять некоторое время. | |
|
|
|
|
|
|
|
для: ntro123
(10.09.2010 в 21:01)
| | ну PHP как бы отдаёт сразу, полностью, сгенерированный результат.
то чего вы хотите помоему добиться невозможно.
можно попробовать какимто асинхроном, AJAX например. | |
|
|
|
|
|
|
|
для: sl1p
(10.09.2010 в 21:34)
| | спасибо, уже понял что только ajax(см выше).
тему можно закрывать. | |
|
|
|
|
|
|
|
для: sl1p
(10.09.2010 в 21:34)
| | Trianon уже написал, как это можно реализовать - ob_flush(), flush() | |
|
|
|