Вызов метода php из самого себя
Считываю и фильтрую данные из API и, преобразовав в JSON, отдаю на обработку фронт-энду. Данные получаются пошагово, т.е. за первый запрос API возвращает ~10% всех данных, за второй и третий от 70% до 90%, т.е. всё остальное. Дело в том, что иногда в первом запросе нет удовлетворяющих фильтрам результатов (пустые, либо не полные данные приходят), и мне нужно перезапустить этот же метод.
Могу я вызвать его вот так:
if(count($NewArray)==0)
{
$this->GetList($IntoParams, $json["search_id"]);
}
else
{
return $NewArray;
}
search_id
- это идентификатор, передающийся для идентификации цепочки запросов, чтобы API понимал что по этому search_id
уже отдавались какие-то данные (например первые 10%), и нужно отдавать данные дальше. Когда всё уже отдано, API возвращает массив, содержащий только search_id
.
Весь метод GetList() (без подробностей) выглядит так:
public function GetList($aParams, $uuid) {
if(isset($uuid) && $uuid!="")
{
//Если есть $uuid то сразу обращаемся к API, получаем JSON
//предварительно его очищаем от резуьтатов которые нам не нужны
//в результате получается почищенный $json
}
else
{
//Если $uuid нет, формируем предварительный запрос к API
//получаем $uuid и дальше то же самое что выше, в
//результате запроса получаем очищенный $json
}
//Дальше преобразуем структуры $json к такому виду
//который воспринимает front-end сохраняется всё в $NewArray
Я хочу сразу же перезапустить метол если $NewArray получился пустым. Вопрос как мне это сделать? ))