Использование FPDF с автозагрузкой композитора - PullRequest
0 голосов
/ 03 марта 2019

Я могу использовать класс FPDF, если мне потребуется правильный файл из моей библиотеки:

<?php namespace MyNamespace;

require_once '../../../vendor/setasign/fpdf/fpdf.php';
// use FPDF;

$pdf = new \FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();

Примечание: файл fpdf.php не имеет пространства имен.

Компоновщик должен автоматически загружать этот файлфайл для меня.Фрагмент из моего autoload_classmap.php, сгенерированный composer:

// autoload_classmap.php @generated by Composer

$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);

return array(
    'FPDF' => $vendorDir . '/setasign/fpdf/fpdf.php',
    'File_Iterator' => $vendorDir . '/phpunit/php-file-iterator/src/Iterator.php',

Другая библиотека phpunit загружается нормально.

Как я могу автоматически загрузить библиотеку FPDF с помощью composer и использовать: use FPDF;?

1 Ответ

0 голосов
/ 03 марта 2019

Я забыл запросить файл autoload.php из папки vendors.Поскольку функция глобальная, мне даже не нужно добавлять use FPDF;.

<?php namespace MyNamespace;

require_once '../../../vendor/autoload.php';

$pdf = new \FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output();

. Phpunit работал, потому что к phpunit обращались из командной строки, и я настроил phpunit для включения файла autoload.php,

Надеюсь, это поможет кому-то еще.Это немного расстраивает, когда ты тратишь часы на что-то, казалось бы, простое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...