正在 laravel 邮件中发送附件
Sending attachment in laravel mail
各位。我正在尝试发送带有附件的电子邮件。我所做的是:
controller code snippet:
try{
Mail::send(['name' => 'By System'],array(), function($msg) use ($email,$name,$message,$attachment,$ext,$display) {
$msg->from('ricket999@gmail.com', 'Markle Admin');
$msg->to($email)->subject('Payment Done')
->setBody('This is to notify you that the employee named '.$name.' has been paid for the monthly payment. Thank You.','text/html')
->attach(public_path().'/'.$attachment, ['as' => $display.'.'.$ext, 'mime' => 'application/pdf']); });
}
catch(Exception $e){
// if any error mark the mail sent status 0
$result = DB::table('message')->where('name',$name)->where('email',$email)->update(['sent'=>'0']);
}
但显示此错误:
Type error: Argument 1 passed to Swift_Mime_SimpleMessage::attach() must implement interface Swift_Mime_MimeEntity, string given, called in E:\xampp\htdocs\email-send\app\Http\Controllers\HomeController.php on line 133
我错过了什么。我看到了 this and this,但它和我的一样,他们说它有效,但为什么我会收到此错误。任何形式的帮助表示赞赏。谢谢。
您有 2 个问题:
您在将 mime 设置为 application/pdf
时尝试附加 zip 存档
您的存档路径错误。
代替
E:\xampp\htdocs\email-send\public\files\1520764563.zip
是E:\xampp\htdocs\email-send\public/files/1520764563.zip
关于 Argument 1 passed to Swift_Mime_SimpleMessage::attach() must implement interface Swift_Mime_MimeEntity, string given
错误,我想这可以解决您的问题:
$swiftAttachment = Swift_Attachment::fromPath($correctPath);
$this->email->attach($swiftAttachment); // now attach the correct type
各位。我正在尝试发送带有附件的电子邮件。我所做的是:
controller code snippet:
try{
Mail::send(['name' => 'By System'],array(), function($msg) use ($email,$name,$message,$attachment,$ext,$display) {
$msg->from('ricket999@gmail.com', 'Markle Admin');
$msg->to($email)->subject('Payment Done')
->setBody('This is to notify you that the employee named '.$name.' has been paid for the monthly payment. Thank You.','text/html')
->attach(public_path().'/'.$attachment, ['as' => $display.'.'.$ext, 'mime' => 'application/pdf']); });
}
catch(Exception $e){
// if any error mark the mail sent status 0
$result = DB::table('message')->where('name',$name)->where('email',$email)->update(['sent'=>'0']);
}
但显示此错误:
Type error: Argument 1 passed to Swift_Mime_SimpleMessage::attach() must implement interface Swift_Mime_MimeEntity, string given, called in E:\xampp\htdocs\email-send\app\Http\Controllers\HomeController.php on line 133
我错过了什么。我看到了 this and this,但它和我的一样,他们说它有效,但为什么我会收到此错误。任何形式的帮助表示赞赏。谢谢。
您有 2 个问题:
您在将 mime 设置为
application/pdf
时尝试附加 zip 存档
您的存档路径错误。 代替
E:\xampp\htdocs\email-send\public\files\1520764563.zip
是E:\xampp\htdocs\email-send\public/files/1520764563.zip
关于 Argument 1 passed to Swift_Mime_SimpleMessage::attach() must implement interface Swift_Mime_MimeEntity, string given
错误,我想这可以解决您的问题:
$swiftAttachment = Swift_Attachment::fromPath($correctPath);
$this->email->attach($swiftAttachment); // now attach the correct type