Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel-如何将变量注入密码提醒电子邮件_Php_Laravel_Laravel 4 - Fatal编程技术网

Php Laravel-如何将变量注入密码提醒电子邮件

Php Laravel-如何将变量注入密码提醒电子邮件,php,laravel,laravel-4,Php,Laravel,Laravel 4,使用Laravel4.1的新密码代理,是否有方法将一些数据传递到密码提醒视图?具体来说,我希望能够更改密码重置视图的URL 看看这里:我不确定它是否足够灵活,可以在不完全扩展这个类的情况下接受数据 我不确定我是否完全理解这个问题,但如果您想传递一些额外的数据,可以在Laravel中使用如下代码: ` $activation=[] $activation['email']=$email $activation['subject']=“一些信息” 邮件::发送('emails.auth.activa

使用Laravel4.1的新密码代理,是否有方法将一些数据传递到密码提醒视图?具体来说,我希望能够更改密码重置视图的URL


看看这里:我不确定它是否足够灵活,可以在不完全扩展这个类的情况下接受数据

我不确定我是否完全理解这个问题,但如果您想传递一些额外的数据,可以在Laravel中使用如下代码: ` $activation=[]

$activation['email']=$email

$activation['subject']=“一些信息”

邮件::发送('emails.auth.activate',$data,函数($message)使用($activation)

{

$message->to($activation['email'])->subject($activation['subject'])


}))`

数组中提供给提醒方法的任何内容都将传递给提醒视图。你可以拿出很多这样的逻辑,手动完成所有的事情

$user = Password::getUser(Input::get('email'));

$remind_repo = App::make('Illuminate\Auth\Reminders\ReminderRepositoryInterface');
$token = $remind_repo->create($user);

$data['name'] = 'Forest Gump';
$data['likes'] = ['running', 'chocolates'];
$data['girlfriend'] = 'Jenny';
$data['user'] = $user;
$data['token'] = $token;

Mail::send('email.reminder', $data, function($m) use ($user)
{
    $m->to($user->getReminderEmail());
});

现在,您的视图将可以访问
名称
喜欢
女友
用户
,以及
令牌
,不幸的是,searsaw建议的代码对我不起作用。我想我搞错了。但我找到了下一个解决方案:

    View::composer('emails.auth.reminder', function($view) use ($user) {
        $view->with([
            'first_name'  => $user->first_name,
            'email'       => $user->email,
            'newPassword' => Input::get('new_password'),
            'logo'         => asset('/images/mail/logo.png'),
            'twitter_img'  => asset('/images/mail/btn_twitter_pressed.png'),
            'facebook_img' => asset('/images/mail/btn_fb_pressed.png')
        ]);
    });

我在
Password::embrand
method

之前使用了此代码。您找到了一种干净的方法吗?我将此代码添加到PasswordBroker文件中,它可以正常工作,尽管这并不是它的最佳位置,但我在传递它时遇到了问题。$m->subject('Reset your password')->to($user->getrementeremail());谢谢@Jason。我有点震惊,没有一种干净的方法可以做到这一点。首先,我得到了一个错误,Password::getUser需要一个数组作为参数。我改用User::where。但后来我发现了这个错误:目标[Illumb\Auth\Members\MemberRepositoryInterface]不可实例化:(因此,在该特定视图上调用该视图::composer()将在调用密码::提醒()并发送该视图时触发视图更改?非常感谢此解决方案。帮助很大。这是一个简单的电子邮件发送。在这种情况下,我们希望将一些数据传递给密码::提醒()视图。这是通过View::composer()完成的。)正如@Victor在下面所说的