PHP time_limit и рекурсия

12
S
На сайте с 03.07.2009
Offline
41
#11

А если запуск самого себя сделать методом пост с последующим die(); ?

Кодинг на PHP. Разработка расширений под Joomla.
TF-Studio
На сайте с 17.08.2010
Offline
334
#12

форкнуть несколько процессов можно попробовать.

Всё ещё лучший способ заработка для белых сайтов: GoGetLinks (https://www.gogetlinks.net/?inv=fahbn8).
Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#13
sdaprel:
А если запуск самого себя сделать методом пост с последующим die(); ?

Да какая разница как? Хоть ПУТом, хоть ХЕДом - до фонаря. Проблема в том, что скрипт будет ждать результат курла, фопена или файл_гет_контентса.

Подпись))
S
На сайте с 03.07.2009
Offline
41
#14

Изврат конечно, но можно что бы яваскрипт с фронта, скрипт по таймеру вызывал.

dkameleon
На сайте с 09.12.2005
Offline
386
#15
Милованов Ю.С:
Да какая разница как? Хоть ПУТом, хоть ХЕДом - до фонаря. Проблема в том, что скрипт будет ждать результат курла, фопена или файл_гет_контентса.

можно сокетами - отправить запрос и закрыть коннект, не ожидая ответа.

запрошенный скрипт отработает исправно (с игноре_юзер_аборт конечно).

Дизайн интерьера (http://balabukha.com/)
A4
На сайте с 05.01.2012
Offline
55
#16
Милованов Ю.С:
Да какая разница как? Хоть ПУТом, хоть ХЕДом - до фонаря. Проблема в том, что скрипт будет ждать результат курла, фопена или файл_гет_контентса.

curl_setopt($ch, CURLOPT_TIMEOUT_MS, 1);

Таки да хД

Но я это поборол хД

---------- Добавлено 28.02.2013 в 18:26 ----------

К стати сдеано примерно так:


$url = "test1.ru/rec.php";
if(isset($_GET['i'] <= $_GET["max"]){
sleep(20);
//..
//действия
//..
$i++;
$ch = curl_init($url."/?max=".$_GET['max']."&&i=".$i);//продолжаем рекурсию
curl_setopt($ch, CURLOPT_TIMEOUT, 1);
curl_exec ($ch);
curl_close ($ch);
}
if(!isset($_GET['max']) && !isset($_GET['i'])){//если икаких параметров не передано.
$max = 6;
$ch = curl_init($url."/?max=".$max."&&i=1");//запуск рекурсии
curl_setopt($ch, CURLOPT_TIMEOUT, 13);
curl_exec ($ch);
curl_close ($ch);
}


---------- Добавлено 28.02.2013 в 18:38 ----------

Теперь файл закачивается рекурсивно, все нормально. Но! Я хотел чтобы первые 500килобайт файла, как только пользователь их скачает - начинали бы скачиваться. В это время алгоритм подгрузит остальную часть файла, таким образом ускорится процесс... В общем пользователю будет проще, да и быстрее работать будет.

Не подскажите как это примерно реализовать? Копаю в сторону Chunked transfer encoding, мне именно это посоветовали здесь же на форуме. Но я если честно уже 2 день копаю в эту сторону и не могу заставить алгоритм работать так как мне надо. скачка начинается, но скачиваются только первые 500 килобит, остальное не передается. Что еще досаднее - урл у команды по которой мы получаем первый(начальный) пакет выглядит так: - test1.ru/rec.php, а урл с которого берется второй пакет так: test1.ru/rec.php/?max=6&&i=1 ну и так далее... Естесственно броузер не может собрать все воедино да и не возможно это. Есть мысли какие нибудь по этому поводу? Я уже всю свою фантазию израсходовал(

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий