我如何将 PHP 文件中的变量放入 blade

How am I putting in an variabel into blade from PHP file

我正在尝试制作一个简单的 "forgot password" 函数,所以一切正常,但我不知道如何将我的变量放入 blade 文件。

这是我的来源:

public function postForgot(Request $request) {

    $token = bin2hex(openssl_random_pseudo_bytes(16));

    $this->validate($request, [
        'email' => 'required|email|max:255|min:3',

    ]);

    if (User::where('email', '=', $request->input('email'))->exists()) {

        // user found

        Mail::send('emails.forgot', function($message) {

            $message->to($_POST['email'],$_POST['email'])->subject('We almost got your password back...');

        });

    } else {

        echo "Not found user";

    }

}

路由文件:

    Route::get('/forgot/new_password', [
    'uses' => '\Zyllox\Http\Controllers\AuthController@getForgotNewPassword',

]);

Route::post('/forgot/new_password', [
    'uses' => '\Zyllox\Http\Controllers\AuthController@postForgotNewPassword',
    'as' => 'auth.new_pass',
    'middleware' => ['guest'],
]);

这是我的简单 blade 文件:

Here's your token m8 : {{ $token }}

我希望 $token 变量在 blade 文件中工作。

谢谢!

您需要将令牌传递到 Mail::send() 函数(第二个参数)中的模板数据数组。

public function postForgot(Request $request) {
    $token = bin2hex(openssl_random_pseudo_bytes(16));
    $this->validate($request, [
        'email' => 'required|email|max:255|min:3',
    ]);
    if (User::where('email', '=', $request->input('email'))->exists()) {
        Mail::send('emails.forgot',['token' => $token], function($message) {
            $message->to($_POST['email'],$_POST['email'])->subject('We almost got your password back...');
        });
    } else {
        echo "Not found user";
    }
}