gordon_shamway
@gordon_shamway

Как можно заставить curl пропускать полностью запрос после определенного времени?

Есть скрипт он работает в консоли, его задача отправлять запрос к апи, получать ответ и сохранять в бд.
Сегодня столкнулся с такой проблемой при отправке запроса, сервер (куда я отправляю запрос) не дал ответа, поэтому скрипт полностью завис и пришлось запускать заново.
Хочу решить данную проблему установив в curl

url_setopt($ch, CURLOPT_CONNECTTIMEOUT ,0); 
curl_setopt($ch, CURLOPT_TIMEOUT, 600); //10 минут


Вопрос можно как то обработать данный ответ, если скрипт снова не получил ответа, то он должен не закрыться, а начать выполнять следующую задачу.

If($response=="Нет ответа"){
// запись в log.txt
// запись в бд о пропуске задачи
} // выполняем следующую задачу
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
Не уверен что правильно понял, но возможно вам поможет:
try {
    $response = curl_exec($ch);
} catch (Exception $e) {
    echo 'Нет ответа'.
}

//Следующая задача.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы