在这里,创建Laravel 8的基本示例从视图中创建PDF。
无涯教程将从头开始逐步说明,因此,需要使用下面命令获取新的Laravel 8应用程序:
composer create-project --prefer-dist laravel/laravel blog
首先,将在Laravel 8应用程序中安装barryvdh/laravel-dompdf Composer包。
composer require barryvdh/laravel-dompdf
成功安装包后,打开config/app.php文件并添加service provider和alias别名。
config/app.php
'providers' => [
....
Barryvdh\DomPDF\ServiceProvider::class,
],
'aliases' => [
....
'PDF' => Barryvdh\DomPDF\Facade::class,
]
在这是无涯教程需要创建项目列表的路由。所以打开"routes/web.php"文件并添加以下路由。
routes/web.php
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PDFController;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('generate-pdf', [PDFController::class, 'generatePDF']);
在这里,需要创建新的控制器PDFController,该控制器PDFController将管理GeneratePDF方法。
app/Http/Controllers/PDFController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use PDF;
class PDFController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function generatePDF()
{
$data = [
'title' => '欢迎访访问LearnFK无涯教程网',
'date' => date('Y-m-d')
];
$pdf = PDF::loadView('myPDF', $data);
return $pdf->download('learnfk.pdf');
}
}
在最后一步中,一起为PDF文件的布局创建myPDF.blade.php(resources/views/myPDF.blade.php),并按照以下代码:
resources/views/myPDF.blade.php
<!DOCTYPE html>
<html>
<head>
<title>Hi</title>
</head>
<body>
<h1>{{ $title }}</h1>
<p>{{ $date }}</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</body>
</html>
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)
Tony Bai · Go语言第一课 -〔Tony Bai〕