我正在尝试通过Laravel发送邮件。这是我的代码:
邮件文件夹内的sendmailable.php文件
<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class SendMailable extends Mailable
{
use Queueable, SerializesModels;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct()
{
//
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->view('view.name');
}
}
我的控制器代码是:
$data= ['name'=>'sakal de boss'];
Mail::send(['text'=>'mail'],$data, function($message){
$message->to($to, 'sakal')->subject('ami mail korsi');
$message->from($from,'sakal');
});
echo 'hey';
}
查看页面:
<div>
Hi, This is : {{ $name }}
</div>
我的视图页面上没有其他标签,但是邮件中仍然有html标签。
这是我收到的邮件。
邮件输出:
答案 0 :(得分:2)
在您的 .blade.php 文件中尝试以下操作:(查看)
{!! $name !!}
代替此:(这将呈现您的 HTML )
{{ $name }}
答案 1 :(得分:2)
使用{!! $name !!}
或<?= $name ?>
而不是{{ $name }}
OR
Mail::send(['html.view', 'text.view'], $data, $callback);
答案 2 :(得分:2)
您的第一个参数'text'将被视为普通邮件,因此请尝试以下
Mail::send('email view name',$data, function($message){
$message->to($to, 'sakal')->subject('ami mail korsi');
$message->from($from,'sakal');
});
或
Mail::send( ['html' => 'email view name'], $data, function($message){
$message->to($to, 'sakal')->subject('ami mail korsi');
$message->from($from,'sakal');
});