Что возвращает curl_multi_getcontent ($ ch), если $ ch не готов? - PullRequest
1 голос
/ 11 сентября 2010

Что возвращает curl_multi_getcontent ($ ch), если $ ch не готов в PHP?

1 Ответ

5 голосов
/ 11 сентября 2010

Ответ на заданный вами вопрос:

  • Если ответ еще не получен, curl_multi_getcontent возвращает NULL.
  • Если передача выполняется, curl_multi_getcontent возвращает полученные данные.


Вопрос, который вы хотели задать, по-видимому, таков: Как узнать, когда операция curl_multi... завершена?

Ответ в том, что вы не используете curl_multi_getcontent для этого. Вместо этого неоднократно вызывайте curl_multi_exec до тех пор, пока второй параметр (который представляет собой число вложенных дескрипторов, все еще работающих над его передачей) не станет равным 0. В этом посте из комментариев в руководстве показаны некоторые рабочие код. Вы также можете посмотреть curl_multi_select, который будет блокироваться до тех пор, пока в соединении не будет активности. Это, вероятно, приводит к меньшему количеству потерянных циклов при совершении вызовов curl_multi_exec: см. Пример № 1 на странице руководства для curl_multi_exec.

Если вы используете версию 5.2.0 или более позднюю, вы можете использовать curl_multi_info_read, чтобы получить состояние отдельных подключений, а не ждать их всех. (инструкция)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...