php 如何修复类'PDF'中找不到laravel

z5btuh9x  于 2022-10-30  发布在  PHP
关注(0)|答案(7)|浏览(187)

在My Laravel应用程序中遇到以下错误:
在第14行出现异常错误:未找到类“PDF”
这是我的CollaboPDF控制器.php

<?php

  namespace App\Http\Controllers;

  use Illuminate\Http\Request;

  use App\Http\Requests;
  use App\Http\Controllers\Controller;
  use PDF;

  class CollaboPDFController extends Controller
  {
      public function getPDF(){
        $pdf = PDF::loadView('customer.customer'); //line 14
        return $pdf->download('customer.customer');
      }
      //
  }

我该怎么补救?

ktecyv1j

ktecyv1j1#

您正在使用错误的导入。要使用您想要的PDF(可能是laravel-dompdf),请用途:

use Barryvdh\DomPDF\Facade as PDF;

如果你把'PDF' => Barryvdh\DomPDF\Facade::class,放在config/app.php文件中,你还可以用途:

use \PDF;

\PDF::loadView('customer.customer');
1mrurvl1

1mrurvl12#

首先,您必须需要DOMPDF软件包
第一步:

composer require barryvdh/laravel-dompdf

步骤2:在..\config\app.php中

'providers' => [ 
  .....
  Barryvdh\DomPDF\ServiceProvider::class,
],
'aliases' => [
  .....
 'PDF' => Barryvdh\DomPDF\Facade::class,
]

第三步:

use \PDF;

第四步:

$pdf = PDF::loadView('pdf.report');
return $pdf->stream('report.pdf', array('Attachment' => 0));
muk1a3rh

muk1a3rh3#

您可以在安装dompdf后运行以下命令,并在此文件config/app.php中设置服务提供程序和别名

php Artisan缓存:清除php Artisan配置:缓存

wmvff8tz

wmvff8tz4#

运行以下命令

composer require barryvdh/laravel-dompdf
cygmwpex

cygmwpex5#

终于得到了解决方案,其实是我的domPDF安装问题,我这样发现的

php artisan cache:clear
// and
php artisan config:cache

并重新安装domPDF

deyfvvtc

deyfvvtc6#

这是bootstrap文件夹中缓存config.php问题

共享主机不显示您的[项目文件夹]在共享主机的完整路径,如果你想清除缓存,你必须购买他们的插件.通过给定的解决方案,你不需要购买任何插件或不需要清除/配置laravel 5.6或更多的缓存.
点击浏览器中的URL,它会给予你错误日志。2现在打开你的错误日志并从错误日志中复制路径
将config.php中的[您的项目文件夹]/bootstrap/cache、[您的项目文件夹]\bootstrap\cache或[您的项目文件夹]* 等的所有文件路径更改为从错误日志复制的完整路径,如**/mnt/stor 2-wc 1-dfw 1/411797/622471/[您的域]/web/content/[您的项目文件夹]**

wlsrxk51

wlsrxk517#

在我的例子中,我尝试了上面的一些例子,但是没有任何效果。然而,我浏览了位于这里的包的目录:
project-folder〉vendor〉barryvdh〉laravel-dompdf〉src〉Facade〉Pdf.php,我意识到在文件〉〉app. php中创建的PDF别名没有使用正确的类,所以替换:

'aliases' => [
  .....
 'PDF' => Barryvdh\DomPDF\Facade::class,
]

签署人:

'aliases' => [
  .....
 'PDF' => Barryvdh\DomPDF\Facade\Pdf::class,
]

我希望这对你有帮助。

相关问题