Как я могу передать массив в throw new Exception () в PHP. Что лучше всего передать массив в обработчик исключений?

Вот мой код, но отправьте мне ошибку. Его неправильные параметры для обработчика исключений.

   try {
$validator = Validator::make($request->all(), [
'first_name' => 'required|max:255',
'last_name' => 'required|max:255',
'email_address' => 'required|unique:users|email',
'username' => 'required|unique:users|max:20',
'phone_number' => 'alpha_num|max:13',
'password' => 'required|min:6|max:18',
]);if ($validator->fails()) {
throw new Exception('Please checkout your fields again!', $validator->errors() );
}

}catch( Exception $e){
return ['success'=>false, 'message'=>$e->getMessage()];
}

2

Решение

Ты можешь использовать взрываться функция, которая присоединится к массиву в виде строки

что-то вроде этого:

try {
$validator = Validator::make($request->all(), [
'first_name' => 'required|max:255',
'last_name' => 'required|max:255',
'email_address' => 'required|unique:users|email',
'username' => 'required|unique:users|max:20',
'phone_number' => 'alpha_num|max:13',
'password' => 'required|min:6|max:18',
]);if ($validator->fails()) {
throw new Exception('Please checkout your fields again!', implode(',',$validator->errors()) );
}

}catch( Exception $e){
return ['success'=>false, 'message'=>$e->getMessage()];
}
0

Другие решения

Вы должны попробовать это может быть более полезным для вас:

$validator = Validator::make($request->all(), [
'first_name' => 'required|max:255',
'last_name' => 'required|max:255',
'email_address' => 'required|unique:users|email',
'username' => 'required|unique:users|max:20',
'phone_number' => 'alpha_num|max:13',
'password' => 'required|min:6|max:18',
]);

if ($validator->fails()) {
return redirect('yourRoute')
->withErrors($validator)
->withInput();
}

Для более подробной информации, вы можете следить за этим ссылка на сайт.

0

По вопросам рекламы [email protected]