@lasthero67

Как после выполнения curl-запроса проверить данные?

Есть доступ к стороннему API. Делаю запрос по CURL, получаю ответ, записываю полученные данные в файл и храню определенное время. Данные на сайт выводятся именно из файла. Не получится ли так, что в какой-то момент запрос выдаст ошибку и у меня файл перезапишется непонятно чем? Как прописать условие проверки, чтобы избежать данной ситуации?
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
$data['expiration_date'] = date("U") +  28800;
file_put_contents($filename, json_encode($data));
  • Вопрос задан
  • 154 просмотра
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
На будущее - ВСЕ данные, приходящие из внешних источников (пользователи сайта, сторонние апи, спарсенные странички и тд) нужно проверять.
Что проверять и как - вопрос слишком широкий, так как для разных задач проверки будут абсолютно разными.

Основными проверками чаще всего являются:
1) Проверка кода ошибки или заголовка ответа от сторонних сервисов
2) Пустое значение или общая длина
3) Соответствие типу
4) Соответствие паттерну
ну и еще много чего можно перечислить, для узких задач.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alekssamos
Программист любитель
Ну если будет ошибка, то до последней строки он не дойдёт и ничего не запишет,
а так, если даже ошибки приходят в JSON, то проверять, есть ли определённые, нужные нам ключи или нет. Например, array_key_exists("balance", $data)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы