失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > laravel使用dompdf总结

laravel使用dompdf总结

时间:2023-07-17 23:18:42

相关推荐

laravel使用dompdf总结

近期因为工作需要,要生成并导出pdf,所以用到了laravel 的dompdf,直接开正文

一、安装

1、项目目录下执行 composer

composer require barryvdh/laravel-dompdf

2、注册服务在 config/app.php 中添加 Barryvdh\DomPDF\ServiceProvider::class,,如下

Barryvdh\DomPDF\ServiceProvider::class,

3、添加门面,同样是在 config/app.php 中添加 ‘PDF’ => Barryvdh\DomPDF\Facade::class,

'PDF' => Barryvdh\DomPDF\Facade::class

4、经过以上三个步骤,可以正常使用了。为了修改配置方便,可以在 config 目录下生成配置文件,执行 php artisan vendor:publish --provider=“Barryvdh\DomPDF\ServiceProvider”,成功后可查看 config/dompdf.php 配置文件。根据自己的需求进行修改,也支持动态修改。

php artisan vendor:publish --provider="Barryvdh\DomPDF\ServiceProvider"

二、使用

定义好路由之后,新建控制器进行测试。根据官方文档,可以使用 App::make(‘dompdf.wrapper’) 或者 PDF 门面进行实例化,效果是一样的,使用门面注意 use PDF。

use Illuminate\Support\Facades\App;$pdf = App::make('dompdf.wrapper');$pdf->loadHTML('<h1>Test</h1>');// 根据 HTML 代码生成 PDFreturn $pdf->stream();

use \PDF;$pdf = PDF::loadView('pdf', ['date' => date('Y-m-d')]);// 根据视图文件生成 PDFreturn $pdf->download('date.pdf');// 参数为文件名

use \PDF;$file = storage_path('app/public/pdf/name.html');$pdf = PDF::loadFile($file);return $pdf->stream();

也可以链式调用多个方法,下面的代码是根据视图生成 PDF,然后保存到指定路径,最后在进行展示

use \PDF;return PDF::loadView('pdf', ['date' => date('Y-m-d')])->save(storage_path('app/public/pdf/date.pdf'))->stream('date.pdf');

大概就这么多。

但是值得注意的是在使用pdf dompdf时视图的样式会乱,所以你的重行排版

如果觉得《laravel使用dompdf总结》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。