当尝试从刀片.php文件创建pdf时,barryvadh laravel dom-pdf 出错



我正在使用barryvdh的库DOMPdf从我的reports.blade中的html.code生成pdf文档.php如下所示.我想使用reports.blade创建一个PDF.php.当我单击下载pdf链接时,它给出错误说未定义的"用户"变量。

<a href="{{url('/pdfs')}}">Download pdf</a>
@foreach ($users as $user) 
<font size="6"> 
 <ol> {{$user->name}}
    {{$user->lname}}</font><br>
@endforeach

但是我运行这个 Laravel 项目,它调用 undifed 变量时出错。

报告生成器控制器的代码如下所示。

<?php
namespace AppHttpControllers;
use IlluminateSupportFacadesDB;
use AppHttpControllersController;
use IlluminateHttpRequest;
use AppUser;
use PDF;
class pdfGenerator extends Controller
{
    public function reportPdf(){
   $pdf  = PDF::loadview('reports');
   return $pdf->download('report.pdf');
   }

  public function report()
    {
        $users = DB::table('users')->get();
        return view('reports', ['users' => $users]);
    }
}

为什么调用未定义的变量会发生错误。 但是如果没有以下代码部分,我可以下载空的PDF。

@foreach ($users as $user) 
<font size="6"> 
 <ol> {{$user->name}}
    {{$user->lname}}</font><br>
@endforeach

我使用的路线如下

Route::get('/pdfs','pdfGenerator@reportPdf');
Route::get('/reports','pdfGenerator@report');

$users变量作为第二个参数传递给view

public function reportPdf()
{
   $users = DB::table('users')->get();
   $pdf  = PDF::loadview('reports', ['users' => $users]); 

   return $pdf->download('report.pdf');
}

最新更新