FPDF - Class 'App\Http\Controllers\FPDF' 未找到

FPDF - Class 'App\Http\Controllers\FPDF' not found

对于我的项目,我必须生成一个 PDF 文件。 Whosebug 告诉我使用 FPDF。 所以,我按照教程操作,但它似乎不起作用。

public function makePdf(Request $request){
    require('fpdf181/fpdf.php');
    $pdf = new FPDF('p', 'mm', 'A4');
    $pdf->AddPage();
    $pdf->SetFont('Arial','B',16);
    $pdf->Cell(40,10,'Hello World!');
    $pdf->Output();   
  }

这完全是按照教程进行的,但它不起作用。

我也试过这个:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
require('fpdf181/fpdf.php');

但又一次,我得到了同样的错误。

改变这个:

namespace App\Http\Controllers;

use Illuminate\Http\Request;
require('fpdf181/fpdf.php');

对此:

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use FPDF;

由于 PSR-4 自动加载命名空间,您不必明确包含它。

如果您看到此错误,您没有发送正确的 header。

像这样做应该会有帮助:

$headers = array('Content-Type' => 'application/pdf');

return Response::make(PDF::load($html, 'A4', 'portrait')->show('my_pdf'), 200, $headers);

您收到错误消息是因为如果没有正确的 header.

,pdf 无法在 HTML 页面中打开