我在 Laravel 中使用 Mail 库来发送带有传递给刀片视图的自定义数据的 html 电子邮件。当邮件必须呈现从数据库中的一行获取的 html 时产生的问题,其中包括我通过视图传递的变量。这是我的可邮寄类中的构建函数public function build(){ return $this->from('hello@test.it') ->view('view') ->with([ 'url' => 'https://google.com', 'text' => $this->parameters->text, ]);}然后在刀片视图中:<div> {!! $text !!}</div>这是 $text 变量的样子:<p> <span>This is my text for the mail</span> <a href="{{ $url }}">Click here to compile</a></p>链接 href 应包含 url 变量值,而不是不传递变量名本身
2 回答
慕斯王
TA贡献1864条经验 获得超2个赞
一个简单的解决方案是使用 php 进行格式化:
public function build()
{
return $this->from('hello@test.it')
->view('view')
->with([
'text' => str_replace('{{ $url }}','https://google.com',$this->parameters->text)
]);
}
LEATH
TA贡献1936条经验 获得超6个赞
我没有自己尝试,但您可以尝试使用Blade::compileString(),即:
public function build()
{
return $this->from('hello@test.it')
->view('view')
->with([
'url' => 'https://google.com',
'text' => \Blade::compileString($this->parameters->text),
]);
}
- 2 回答
- 0 关注
- 137 浏览
添加回答
举报
0/150
提交
取消