gpt4 book ai didi

php - 如何将 excel 文件附加到电子邮件中?

转载 作者:行者123 更新时间:2023-12-05 01:45:22 27 4
gpt4 key购买 nike

我想我很接近,我只需要在 Mail 中传递 $excelFile 但它一直说它未定义,但是当我传递 $truckstop_post 它通过但数据格式不正确因为它没有通过 Excel::创建呢。如何将\Excel::create 的结果放入 Mail::send??

public function truckstopPost()
{
$type = 'csv';



$truckstop_post = Loadlist::select('pick_city', 'pick_state', 'delivery_city', 'delivery_state', 'trailer_type', 'pick_date', 'load_type', 'length', 'width', 'height', 'weight', 'offer_money', 'special_instructions', 'company_contact', 'contact_phone')->where('urgency', 'OPEN')->orderBy('id', 'desc')->get();

$excelFile = \Excel::create('itransys', function($excel) use ($truckstop_post) {
$excel->sheet('mySheet', function($sheet) use ($truckstop_post)
{
$sheet->fromArray($truckstop_post);

});


$info = Load::find(8500);

$info = ['info'=>$info];


Mail::send(['html'=>'email.invoice_email_body'], $info, function($message) use ($info, $excelFile){

$message->to('mike@gmail.com')->subject('subject');

$message->from('mike@gmail.com', \Auth::user()->name);

$message->attachData($excelFile, 'Invoice.csv');

});


});

return back()->with('status', 'You Posted Truckstop!');

}

这就是我将 $truckstop_post 传递给 attachData() 时的结果,但当然这不是一个格式良好的 csv 文件

enter image description here

最佳答案

你可以这样做

use Maatwebsite\Excel\Excel as BaseExcel;
use Maatwebsite\Excel\Facades\Excel;

...

$filename = "my_file.csv";

$attachment = Excel::raw(
new PurchaseOrderLinesExport($this->data),
BaseExcel::CSV
);
$subject = "Purchase Order"

return $this->from($this->employee->email)
->subject("Purchase Order)
->view('emails.view')
->attachData($attachment, $filename);

Excel::raw() 方法创建/写入临时文件,然后获取其内容并在删除该文件后删除。

如果你使用的是 laravel,第二种解决方案是这样的:

public function build()
{
return $this->markdown('emails.report')
->attach(
Excel::download(
new AuditReport($this->audit),
'report.xlsx'
)->getFile(), ['as' => 'report.xlsx']
);
}

Excel::download() 返回一个 BinaryFileResponse 这就是它不能直接工作的原因,但您可以获取文件。

关于php - 如何将 excel 文件附加到电子邮件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41768490/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com