Потоки? Вылизать ошибка Fatal error: Maximum execution time of 30 seconds exceeded in C:\Program Files\Apache Group\Apache2\htdocs\test\index3.php on line 11 Я так понимаю, что бы решить эту проблему надо создавать потоки или …? Код: ……………………… for($n=0; $n<10; $n++) for($m=0; $m<10; $m++) { { …… $lines = file($url); ….. } } ……………………..
Напишу подробно))) Есть мой сайт -он обращается к другому сайту $lines = file($url); -полученную информацию обрабатывает и меняется $urll; И вопрос не 10 минут и не пол часа, а длительного времени…, я пхп плохо знаю, но как мне подсказывает логика ГЫ), каждое обращения должно быть отдельным потоком(не зависимым), со своим таймаутом.
Не угадали))) есть сайт или сайты не важно, хо содрать инфи и использовать в личных целях, частота запросов не важна, главное, что бы прошло время, не важно какое, конечно в разумных приделах и информация была обработана. Эту задачу можно реализовать и в ручную, но лень и не интересно, я готов потратить время написать код и лицезреть как за меня работает машина)))
PetrMarchenko Для получения страницы, пользуйтесь не file(), а file_get_contents - получает содержимое файла одной строкой, быстро и удобно. А чтобы Ваш скрипт не обрывался каждые 30 сек, пропишите в начале скрипта set_time_limit(0), только убедитесь что нет бесконечных циклов и установите таймаут между обращениями к другому сайту sleep(количество секунд ожидания).
file_get_contents--- возможно быстрей, но с одной строки трудней выбрать инфу))) цикл конечный 100%, так как это for)))
Это не сдирания страниц, статей, …. . Это обычная выборка, которая нужна лично мне, не для показа кому либо, это можно сделать вручную, но лень, да и так интересний!!!!
PHP: <? for($i = 0; $i < 100; $i++) { --$i; } ?> ПыСы: это к тому, что for — не показатель конечного цикла.
Я конечно далеко не мегачувак, но делать какие либо операции с счетчиком в цикле for, это кардинально не правильно, на то это и for, что известно максимальное количество операций)))
Ты не прав. Т.к. есть куча ситуаций, в которых протсо необхходимо пропустить строку! PHP: <?php for($i = 0; $i < 100; $i++) { if(....){ $i++; }; } ?> Так что не говори если не уверен, а на счет слип - чтобы не грузить канал, и сервак удаленный. А если удаленный сервак что-то типа Яндекса, то тебя без слипа забанят уже на открытии 5-6 странице)))) file_get_contents - не возвращает весь текст в одной строке, а получает ее одной строкой! Это разные вещи!