Php 如何使用laravel将附件文件发送到电子邮件
控制器:Php 如何使用laravel将附件文件发送到电子邮件,php,html,laravel,email,email-attachments,Php,Html,Laravel,Email,Email Attachments,控制器: 公共功能发送电子邮件(请求$Request) { $data=数组( “名称”=>$request->name, “电子邮件”=>$request->email, “文本”=>$request->text, “类别”=>$request->category, “公司”=>$request->company, “编号”=>$request->number ); \邮件::发送('AltHr/Portal/supportemail',$data,函数($message)使用($data)
公共功能发送电子邮件(请求$Request)
{
$data=数组(
“名称”=>$request->name,
“电子邮件”=>$request->email,
“文本”=>$request->text,
“类别”=>$request->category,
“公司”=>$request->company,
“编号”=>$request->number
);
\邮件::发送('AltHr/Portal/supportemail',$data,函数($message)使用($data){
$message->from($data['email'],$data['name']);
$message->to($message)ra7veer@gmail.com“)->subject($data['company'.-”.$data['category']);
$message->attach($request->file('files')->getRealPath()[
'as'=>$request->file('files')->getClientOriginalName(),
'mime'=>$request->file('files')->getMimeType()
]);
});
返回视图(“AltHr.Portal.support”);
}
使用addAttachment您的
$request
变量未定义,因为$request
变量在您需要传递此信息的函数中不可用
\Mail::send('AltHr/Portal/supportemail', compact('data'), function ($message) use($data, $request){ .... });
在表单标签中添加属性enctype=“多部分/表单数据”
@DainisAbols是的我就是这么做的?
\Mail::send('AltHr/Portal/supportemail', compact('data'), function ($message) use($data, $request){ .... });
<form role="form" action="{{action('AltHr\Portal\PortalController@sendemail')}}" method="post" class="m-t-15" enctype="multipart/form-data">
....
</form>
$data = array(
'name'=> $request->name,
'email'=> $request->email,
'text'=> $request->text,
'category'=> $request->category,
'company'=> $request->company,
'number'=> $request->number
);
$files = $request->file('files');
\Mail::send('AltHr/Portal/supportemail', compact('data'), function ($message) use($data, $files){
$message->from($data['email']);
$message->to('nuru7495@gmail.com')->subject($data['company'] . ' - ' .$data['category']);
if(count($files > 0)) {
foreach($files as $file) {
$message->attach($file->getRealPath(), array(
'as' => $file->getClientOriginalName(), // If you want you can chnage original name to custom name
'mime' => $file->getMimeType())
);
}
}
});
$emails = ['email address 1', 'email address 2'];
$files = ['url 1','url 2'];
Mail::send('emails.welcome', [], function($message) use ($emails, $files)
{
$message->to($emails)->subject('This is test e-mail');
foreach ($files as $file){
$message->attach($file);
}
});
Mail::send('mail', array('type'=>'AspirantsSelect','AspirantsSelectSms'=>$smg), function($message) use($emailA,$pic)
{
$message->to($emailA)->subject('Aspirants Selection');
$message->attach($pic);
});