|
|
|
| Такой код:
$post_conn=get_post_auth();//данные для авторизации
$ch=curl_init($check);
nj_connect();// авторизация
for ($i=0;$i<$count;$i++)
{
curl_setopt ($ch, CURLOPT_URL, $url);// переход по страницам
$check_url=curl_exec($ch);
preg_match_all("#abc#Ui",$check_url,$vor);// парсинг странички на наличие определенных значений
//на всех страничках данные одинаковые, т.е. подставлятся в $post должно одно и тоже
$in=$check_url;// необходимо для func()
$post=func();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $post);// отправка POST-запроса
$check_url=curl_exec($ch);
}
curl_close($ch);
|
работает как-то странно. А именно:
1 обход цикла проходит как надо
2 обход - парсит страничку и находит данные, которые отправлялись в первом обходе цикла. соответственно отправляет неправильный POST-запрос
3 обход - парсит страничку и находит данные, которые отправлялись в втором обходе цикла и т.д.
Переписал код и получилось:
for ($i=0;$i<$count;$i++)
{
$post_conn=get_post_auth();
$ch=curl_init($check);
nj_connect();
curl_setopt ($ch, CURLOPT_URL, $url);
$check_url=curl_exec($ch);
preg_match_all("#abc#Ui",$check_url,$vor);
$in=$check_url;
$post=func();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $post);// отправка POST-запроса
$check_url=curl_exec($ch);
curl_close($ch);
}
|
Все работает как надо, но на каждый обход цикла уходит 2 с. Первый вариант намного быстрее работает. На все уходит в среднем 5 с.
Подскажите, что там не так? | |
|
|