AlexanderShapoval
@AlexanderShapoval
PHP maker

Можно ли создать список появившихся Exception в цикле, и вернуть их разом?

Идея такова. Клиент, написанный на C# передает данные на сервер, сервер в цикле добавляет данные в БД (100 строк за одну транзакцию между клиентом и сервером). В ходе добавления могут возникнуть исключения: поле равно NULL, поле имеет не верный тип и тд. Ошибка не критичная, она никак не влияет на добавление всех последующих строк. Можно ли собрать все эти Exception в кучу, а потом отправить клиенту по завершении цикла?

Сейчас реализовано так:
try {
    foreach($input as $value) {
        $output = Model::firstOrCreate($value);
    }
} catch (Exception $e) {
    return response()->json(['error' => $e->getMessage()], 400);
}
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
@xutesayor
$exceptions = [];
foreach ($input as $value) {
    try {
        $output = Model::firstOrCreate($value);
    } catch (Exception $e) {
        $exceptions[] = $e->getMessage();
    }
}
return response()->json(['error' => json_encode($exceptions)], 400);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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