我使用Lumen 5.4.7创建了一个新项目,并添加了来自elibyy/tcpdf-laravel
版本5.4.2的TCPDF库(具有Lumen支持):
composer require elibyy/tcpdf-laravel "5.4.2"
我使用
在bootstrap/app.php
中启用了Facades和服务提供商
$app->withFacades();
$app->register(Elibyy\TCPDF\ServiceProvider::class);
我创建了一个基本的控制器:
<?php
namespace App\Http\Controllers;
use \PDF;
class PdfController extends Controller
{
/**
* Create a test PDF file.
*
* @return void
*/
public function createTestPdf()
{
PDF::SetTitle('Hello World');
PDF::AddPage();
PDF::Write(0, 'Hello World');
PDF::Output('hello_world.pdf');
echo "Fatto!";
}
}
有一条基本路线:
$app->get('pdf', 'PdfController@createTestPdf');
但是当我尝试访问/pdf
时,我收到以下错误:
Fatal error: Class 'PDF' not found in /Users/m/Documents/Projects/lumen-pdf/app/Http/Controllers/PdfController.php on line 15
(1/1) FatalErrorException
Class 'PDF' not found
in PdfController.php (line 15)
at Application->handleShutdown()
in RegistersExceptionHandlers.php (line 54)
at Application->Laravel\Lumen\Concerns\{closure}()
你能帮我吗?
答案 0 :(得分:0)
我解决了我的问题。
bootstrap/app.php
中缺少一行,为 Elibyy \ TCPDF \ Facades \ TCPDF 添加 class_alias 到 PDF :
class_alias('Elibyy\TCPDF\Facades\TCPDF', 'PDF');
谢谢!