$input */ public function update(User $user, array $input): void { Validator::make($input, [ 'display_name' => ['required', 'string', 'max:255'], 'first_name' => ['required', 'string', 'max:255'], 'last_name' => ['max:255'], 'email' => ['email', 'max:255', Rule::unique('users')->ignore($user->id)], 'phone' => ['phone', 'max:20', Rule::unique('users')->ignore($user->id)], 'photo' => ['nullable', 'mimes:jpg,jpeg,png', 'max:1024'], ])->validateWithBag('updateProfileInformation'); if (isset($input['photo'])) { $user->updateProfilePhoto($input['photo']); } $user->forceFill( collect($input) ->only(['display_name', 'first_name', 'last_name', 'email', 'phone']) ->toArray() )->save(); } }