Подскажите как заставить curl выполнятся несколько раз?
Есть код
$chphoto = curl_init('https://suppliers-api.wildberries.ru/content/v2/get/cards/list');
curl_setopt($chphoto, CURLOPT_HTTPHEADER, array('Content-Type: application/json',
'Host: suppliers-api.wildberries.ru',
'Authorization: '.$GLOBALS['TokenWBContent']));
curl_setopt($chphoto, CURLOPT_POST, 1);
curl_setopt($chphoto, CURLOPT_POSTFIELDS, '{
"settings": {
"cursor": {
"limit": 100
},
"filter": {
"withPhoto": -1
}
}
}');
curl_setopt($chphoto, CURLOPT_RETURNTRANSFER, true);
curl_setopt($chphoto, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($chphoto, CURLOPT_HEADER, false);
$resultWB3photo1 = curl_exec($chphoto);
curl_close($chphoto);
$resultWB3photo1 = json_decode(json_encode(json_decode($resultWB3photo1)), True);
Он выводит только 100 номенклатур WB. По факту номенклатур больше 1000. В инструкции API Wildberries сказано
spoilerПорядок работы с get/cards/list:
Чтобы получить полный список номенклатур, если их больше 100, необходимо воспользоваться пагинацией.
Cделать первый запрос (все указанные ниже параметры обязательны):
{
"settings": {
"cursor": {
"limit": 100
},
"filter": {
"withPhoto": -1
}
}
}
Пройти в конец полученного списка номенклатур, скопировать из cursor две строки:
"updatedAt": "***",
"nmID": ***,
Вставить скопированные строки в cursor запроса, повторить вызов метода.
Повторять пункты 2 и 3, пока total в ответе не станет меньше чем limit в запросе.
Это будет означать, что Вы получили все карточки.
Как заставить curl отработать в цикле нужно кол-во раз? Можете привести хотя бы пример на php?