将变量传递给 Mail 时的大小限制:send laravel

laradev1108

我正在尝试将查询结果传递到视图中,但我不断收到错误:超过 30 秒的最大执行时间我正在传递较小的对象并且它工作正常,但是当我传递 $monthlyBidStatment 的结果时它会中断通过。如果有更好的方法来做到这一点,我真的很感激任何建议。提前致谢。

public function sendEmailInvoice(Request $request)
    {
        $invoice = Invoice::where('id', '=', $request->invoiceId)->first();
        $startDate = $invoice->start_billing_date;
        $startDateSql = date("Y-m-d", strtotime($startDate));
        $endDate = $invoice->end_billing_date;
        $endDateSql = date("Y-m-d", strtotime($endDate));
        $affiliate = AffiliateDetail::where('id', '=', $invoice->affiliate_detail_id)->first();
        $monthlyBidStatment = BidTracker::where('affiliate_detail_id', '=', $affiliate->id)->whereBetween('created_at', [$startDateSql, $endDateSql])->get();

        // LOG::info(gettype($monthlyBidStatment));

        Mail::send('pdf.invoicePDF', [
            'oAffiliate' => $affiliate,
            'oInvoice' => $invoice,
            'bids' => $monthlyBidStatment,
            'showBreadcrumb' => false
        ], function ($m) use ($affiliate, $invoice, $monthlyBidStatment)
        {
            $m->from(env('APP_EMAIL'), env('APP_NAME'));
            $m->to($affiliate->info_billing_email, $affiliate->info_company_name)->subject(env('APP_NAME') . ' Invoice');
            $pdf = PDF::loadView('pdf.invoicePDF', [
                'oAffiliate' => $affiliate,
                'oInvoice' => $invoice,
                'bids' => $monthlyBidStatment,
                'showBreadcrumb' => false
            ]);

            $m->attachData($pdf->output(), 'invoice.pdf');
        });

        $request->session()->flash('message', 'Successfully sent email invoice');
        return array(
            'status' => 'ok'
        );
    }
马扬克·潘德兹

检查以下行:

$invoice = Invoice::where('id', '=', $request->invoiceId)->first();
// Its a collection object.

Eloquent 返回的所有多结果集都是 Illuminate\Database\Eloquent\Collection 对象的实例,包括通过 get 方法检索或通过关系访问的结果。Eloquent 集合对象扩展了 Laravel 基础集合,因此它自然继承了数十种用于流畅地处理 Eloquent 模型底层数组的方法。

简而言之,我们可以说一个集合对象包含很多东西,但在您的情况下,您只需要数据部分。因此,不是传递整个集合对象,而是通过使用所需的列迭代将其转换为数组并将该数组传递给电子邮件模板。它将消除开销。

前任:

$data = array();
$users = App\User::where('active', 1)->get();
foreach ($users as $user) {
    $data[] = $user->name;
}
// Use $data where required

参考

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Laravel 5->将第二个参数传递给Mail :: send方法

来自分类Dev

将电子邮件地址传递给Mail :: send函数Laravel

来自分类Dev

Laravel - Mail::send() 如何将数据(以数组格式)传递给电子邮件 html 并发送它

来自分类Dev

Laravel:无法将变量传递给视图

来自分类Dev

将Angular变量传递给Laravel

来自分类Dev

Laravel,将变量传递给视图

来自分类Dev

Laravel:将变量传递给 Schema::create

来自分类Dev

将变量传递给 Laravel 模型启动

来自分类Dev

Laravel 将 javascript 变量传递给路由

来自分类Dev

Laravel将传递变量传递给控制器

来自分类Dev

在Laravel 4中将变量(get)传递给route-> Controller-> View时,我丢失了引导程序样式

来自分类Dev

错误:在将两个数组传递给 View 时显示未定义的变量 .in laravel 5.2

来自分类Dev

Laravel 5中Mail :: send中的未定义变量

来自分类Dev

OctoberCMS - Mail::send(), 未定义的变量 - Laravel

来自分类Dev

使用Mail时Laravel视图内的未定义变量

来自分类Dev

Laravel等效于将变量传递给Codeigniter中的函数

来自分类Dev

Laravel 5无法将变量传递给所有视图

来自分类Dev

将变量传递给本地化路线-Laravel 5.2

来自分类Dev

Laravel等效于将变量传递给Codeigniter中的函数

来自分类Dev

Laravel-将变量传递给控制器

来自分类Dev

laravel 5.2无法将变量传递给视图

来自分类Dev

Laravel-将ajax变量传递给模型

来自分类Dev

将Javascript变量传递给laravel 5.3中的路由

来自分类Dev

将变量传递给中间件 Laravel

来自分类Dev

如何将javascript变量传递给laravel路由?

来自分类Dev

Laravel - 将 php 变量作为数组传递给 JS

来自分类Dev

如何将变量从刀片传递给 LARAVEL 命令

来自分类Dev

Laravel excel 将变量传递给出口商

来自分类Dev

如何将多个变量传递给单个视图 Laravel?

Related 相关文章

  1. 1

    Laravel 5->将第二个参数传递给Mail :: send方法

  2. 2

    将电子邮件地址传递给Mail :: send函数Laravel

  3. 3

    Laravel - Mail::send() 如何将数据(以数组格式)传递给电子邮件 html 并发送它

  4. 4

    Laravel:无法将变量传递给视图

  5. 5

    将Angular变量传递给Laravel

  6. 6

    Laravel,将变量传递给视图

  7. 7

    Laravel:将变量传递给 Schema::create

  8. 8

    将变量传递给 Laravel 模型启动

  9. 9

    Laravel 将 javascript 变量传递给路由

  10. 10

    Laravel将传递变量传递给控制器

  11. 11

    在Laravel 4中将变量(get)传递给route-> Controller-> View时,我丢失了引导程序样式

  12. 12

    错误:在将两个数组传递给 View 时显示未定义的变量 .in laravel 5.2

  13. 13

    Laravel 5中Mail :: send中的未定义变量

  14. 14

    OctoberCMS - Mail::send(), 未定义的变量 - Laravel

  15. 15

    使用Mail时Laravel视图内的未定义变量

  16. 16

    Laravel等效于将变量传递给Codeigniter中的函数

  17. 17

    Laravel 5无法将变量传递给所有视图

  18. 18

    将变量传递给本地化路线-Laravel 5.2

  19. 19

    Laravel等效于将变量传递给Codeigniter中的函数

  20. 20

    Laravel-将变量传递给控制器

  21. 21

    laravel 5.2无法将变量传递给视图

  22. 22

    Laravel-将ajax变量传递给模型

  23. 23

    将Javascript变量传递给laravel 5.3中的路由

  24. 24

    将变量传递给中间件 Laravel

  25. 25

    如何将javascript变量传递给laravel路由?

  26. 26

    Laravel - 将 php 变量作为数组传递给 JS

  27. 27

    如何将变量从刀片传递给 LARAVEL 命令

  28. 28

    Laravel excel 将变量传递给出口商

  29. 29

    如何将多个变量传递给单个视图 Laravel?

热门标签

归档