我正在尝试在 laravel 邮件中使用内联附件,但似乎很不幸。我也试过这个 one 但不能通过嵌入原始数据来工作。我有一个 base 64 image/png 这里是它的 example 。
现在我正在尝试使用 attachData 但如何将 ->attachData
传递给我的 mailtransaction.blade
。我应该从我的 Controller 获取 attachData 但我应该调用什么变量?
Controller .php
Mail::send(['html'=>'mailtransaction'], $data_content, function($msg) use ($to, $issueType, $base64){
$msg->to($to); // change this upon finishing
$msg->attachData($base64, 'test.png', ['mime'=>'image/png']);
$msg->subject($issueType);
});
mailtransaction.blade
<!DOCTYPE html>
<html>
<head>
</head>
<body style="width:100%;">
<div style="border:0px solid #000; width:1000px !important;">
<div style="display: inline-block;">
<img src="{{$message->embed('storage/app/public/images/logo.png')}}" height="50px" width="50px">
</div>
<div style="display: inline-block; vertical-align: top;">
<div style="font-size:24px; margin-bottom: -10px;">Fraud Detection Tool</div>
<div>Suspicious Transaction details</div>
</div>
<hr style="border:0px; border-bottom:1px solid #000; width:1000px;">
<div class="container">
{{$msg}}
//I supposedly get the attachData from my controller but what variable should I call?
</div>
<hr style="width:1000px;">
<div class="container_mail" style="width:600px !important;">
<img src="{{}}" height="auto" style="max-width: 1000px">
</div>
</div>
</body>
</html>
最佳答案
您可以将数据作为 second
方法的 send()
参数传递给您的 View ,并且它需要是数据的 array
。将您的 Controller 更改为 -
Mail::send('mailtransaction', ['data_content'=>$data_content,'base64'=>$base64], function($msg) use ($to, $issueType){
$msg->to($to); // change this upon finishing
$msg->attachData($request->getBase64, 'test.png', ['mime'=>'image/png']);
$msg->subject($issueType);
});
在您看来,您可以访问
data_content
和 base64
作为-{{$data_content}}
{{$base64}}
关于php - Laravel-Mail : How to pass ->attachData to view,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48498624/