我运行了这个:
composer require barryvdh/laravel-dompdf
然后我在bootstrap/app.php
中注册:
$app->register(\Barryvdh\DomPDF\ServiceProvider::class);
然后我尝试发布:
php artisanvendor:publish --provider="Barryvdh\DomPDF\ServiceProvider"
。
然后我遇到了一个大错误,如下所示:
PHP Fatal error: Uncaught ReflectionException: Class config does not exist in G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php:809
Stack trace:
#0 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php(809): ReflectionClass->__construct('config')
#1 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php(691): Illuminate\Container\Container->build('config')
#2 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(796): Illuminate\Container\Container->resolve('config', Array, true)
#3 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php(637): Illuminate\Foundation\Application->resolve('config', Array)
#4 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(781): Illuminate\Container\Container->make('config', Array)
#5 G:\web dev in G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php on line 811
Fatal error: Uncaught ReflectionException: Class config does not exist in G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php:809
Stack trace:
#0 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php(809): ReflectionClass->__construct('config')
#1 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php(691): Illuminate\Container\Container->build('config')
#2 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(796): Illuminate\Container\Container->resolve('config', Array, true)
#3 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php(637): Illuminate\Foundation\Application->resolve('config', Array)
#4 G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(781): Illuminate\Container\Container->make('config', Array)
#5 G:\web dev in G:\web development all classes\simba2\vendor\laravel\framework\src\Illuminate\Container\Container.php on line 811.
现在,当我尝试运行 php artisan ser this
时,它显示了同样的错误。
最佳答案
我认为在 bootstrap/app.php
中注册 laravel-dompdf
是为了 lumen
而不是为了 laravel
.
您需要做的是:
首先从您的
bootstrap/app.app 中删除此行
$app->register(\Barryvdh\DomPDF\ServiceProvider::class);
。 php打开
config/app.php
文件并将 DomPDF 服务提供者合并到提供者数组中,并将 DomPDF 外观合并到别名数组中像这样:添加
Barryvdh\DomPDF\ServiceProvider::class,
到providers
数组,如下所示:'providers' => [ /* * Laravel Framework Service Providers... */ Illuminate\Auth\AuthServiceProvider::class, Illuminate\Broadcasting\BroadcastServiceProvider::class, Illuminate\Bus\BusServiceProvider::class, Illuminate\Cache\CacheServiceProvider::class, ... /* * Package Service Providers... */ Barryvdh\DomPDF\ServiceProvider::class, // added here /* * Application Service Providers... */ App\Providers\AppServiceProvider::class, App\Providers\AuthServiceProvider::class, ... ],
添加
'PDF' => Barryvdh\DomPDF\Facade::class,
到aliases
数组,如下所示:'aliases' => [ 'App' => Illuminate\Support\Facades\App::class, 'Arr' => Illuminate\Support\Arr::class, 'Artisan' => Illuminate\Support\Facades\Artisan::class, ... ... 'PDF' => Barryvdh\DomPDF\Facade::class, ],
保存您的
config/app.php
最后执行以下命令以发布来自供应商的 Assets 。
php artisan vendor:publish --provider="Barryvdh\DomPDF\ServiceProvider"
这应该可以解决您的问题
您可以开始使用laravel-dompdf
:
use PDF;
关于在 Laravel 中安装 Dompdf 后出现 PHP 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72024271/