Привет есть функция, которая импортирует новых пользователей из файла CSV.
Если поле пароля для пользователя пустое, я получаю
Cartalyst \ Sentry \ Users \ PasswordRequiredException
Я пытаюсь перехватить это исключение и сохранить сообщение в переменной сеанса, но я хочу продолжить импорт остальных пользователей после возникновения исключения.
В настоящее время я использую этот обработчик:
App::error(function(Cartalyst\Sentry\Users\PasswordRequiredException $exception)
{
Session::push('import.errors', $exception->getMessage());
});
Используя XDebug, я определил, что обработчик запущен, но выполнение также останавливается после ошибки.
Как я могу продолжить импортировать остальных пользователей в CSV?
Вам нужно поймать исключение, когда ваша функция импортирует новых пользователей, тогда вы можете игнорировать это:
your_import_function($users_to_be_imported)
{
foreach ($users_to_be_imported as $user) {
try {
// Import user code here
} catch (Cartalyst\Sentry\Users\PasswordRequiredException $exception) {
// Log user that failed here
}
}
}
Поскольку вы ловите исключение в своей функции — оно не должно «пузыриться» до App::error()
функция
Других решений пока нет …