我有问题,但 2 天都找不到解决方案 Laravel 电子邮件

I have problem but can’t find a solution for 2 days Laravel Email

我不明白为什么会抛出这样的错误。我从控制器而不是对象调用变量。

错误:

Facade\Ignition\Exceptions\ViewException htmlspecialchars() expects parameter 1 to be string, object given (View: C:\OSPanel\domains\best.salon\resources\views\landing\mails-temlate.blade.php)

MAIL控制器:

    <?php

namespace App\Http\Controllers;
use Mail;
use Illuminate\Http\Request;

class MailController extends Controller
{

    public function store(Request $request){
        $client_name = $request->get('name');
        $email = $request->get('email');
        $message = $request->get('text');

        \Mail::send(['text' => 'landing.mails-temlate'], compact('client_name','email','message'),
            function ($message) use ($request){
                $message->to('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute')->subject('Nuo Estik Puslapi Zinute');
                $message->from('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute');
            });

        return view('landing.index', compact('client_name','email','message'));

    }
}

邮件模板

CLIENT INFO:

Name: {{ $client_name }}
Email: {{ $email }}
-----------------------------------------
Message: {{ $message }}

可能你应该像这样重命名你使用的 $message 变量的名称:

public function store(Request $request){
    $client_name = $request->get('name');
    $email = $request->get('email');
    $text = $request->get('text');

    \Mail::send(['text' => 'landing.mails-temlate'], compact('client_name','email','text'),
        function ($message) use ($request){
            $message->to('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute')->subject('Nuo Estik Puslapi Zinute');
            $message->from('estikinfo@gmail.com', 'Nuo Estik Puslapi Zinute');
        });

    return view('landing.index', compact('client_name','email','text'));

}

并且在您看来使用 $text 变量而不是 $message。我相信这里存在冲突,因为您使用 $message 作为要显示的文本,但是 $message 变量也在闭包内部使用,然后它是对象而不是字符串。