Слишком мало аргументов передано с Mail :: raw (), Laravel

Я все время получаю эту ошибку:

"Type error: Too few arguments to function App\Http\Controllers\PageController::App\Http\Controllers\{closure}(), 1 passed and exactly 2 expected"

Для этого небольшого фрагмента кода:

public function contact(Request $request)  {
    Mail::raw($request->message, function($message, $request)
     {
         $message->from($request->email, $request->name);

         $message->to('[email protected]');
     });
      return view('quotation.index');  
}

При замене $request->email на строку электронной почты функция работает. Но электронное письмо должно быть отправлено с адреса электронной почты, введенного в форму laravel. Может ли кто-нибудь помочь мне решить эту проблему?

Вы получаете ошибку в этой строке $message->from($request->email, $request->name);?

Adnan Mumtaz 01.05.2018 20:18
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
0
1
760
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы получаете эту ошибку, потому что передаете переменные в закрытие, но неправильным образом.

Вы должны использовать use ($request) в закрытии, если хотите передать переменную.

public function contact(Request $request)  {
    Mail::raw($request->message, function($message) use ($request)
     {
         $message->from($request->email, $request->name);

         $message->to('[email protected]');
     });
      return view('quotation.index');  
}

Надеюсь это поможет.

Другие вопросы по теме