在Laravel Markdown邮件的组件URL中使用变量

iLC*_*iLC 1 php email laravel

我在Laravel中收到以下降价邮件:

# Welcome to Offer Site
Thanks for listing your product, {{$user->name}}! 

@component('mail::button', ['url' => 'https://www.example.com/product/view/{{$product->id}}', 'color'=> 'orange'])
View it here
@endcomponent
Run Code Online (Sandbox Code Playgroud)

但是,发送邮件时的呈现URL为 https://www.example.com/product/view/%3C?php%20echo%20e(%24product-%3Eid);%20?%3E

这可能非常简单,但是很难说...我该如何确保将变量作为参数正确插入URL栏中,这是在ProductAdded邮件的构建中:

return $this->markdown('emails.product-added-email');
Run Code Online (Sandbox Code Playgroud)

这就是我传递给ProductAddedMail的内容:

\Mail::to($user)->send(new \App\Mail\ProductAdded($user, $product));

变量工作正常。

有任何想法吗?

Jer*_*dev 6

您已经在php字符串中,无需使用刀片括号。您可以像这样连接字符串:

@component('mail::button', ['url' => 'https://www.example.com/product/view/' . $product->id, 'color' => 'orange'])
Run Code Online (Sandbox Code Playgroud)