NextPDF für CodeIgniter 4 installieren
Auf einen Blick
Abschnitt betitelt „Auf einen Blick“Installieren Sie das Paket mit Composer. CodeIgniter 4 erkennt die Services-Klasse und die Helper-Funktionen automatisch. Sie müssen nichts manuell registrieren.
Anforderungen
Abschnitt betitelt „Anforderungen“Das Paket deklariert diese Beschränkungen in composer.json; diese Datei ist die maßgebliche Quelle. Die folgende Tabelle gibt dieselben Beschränkungen wieder.
| Abhängigkeit | Beschränkung | Hinweise |
|---|---|---|
| PHP | >=8.4 <9.0 | Das Paket ist für PHP 8.4 ausgelegt. |
nextpdf/core | ^3.0 || ^5.2 | Die NextPDF-Engine. |
codeigniter4/framework | ^4.6 | Verifiziert gegen CodeIgniter 4.7.0. |
ext-mbstring | zur Laufzeit erforderlich | Wird einmal pro Prozess validiert. |
ext-zlib | zur Laufzeit erforderlich | Wird einmal pro Prozess validiert. |
Optionale Pakete, die unter suggest deklariert sind:
| Paket | Fügt hinzu |
|---|---|
nextpdf/artisan | Chrome-CDP-HTML-Renderer (beim Dokument-Build automatisch erkannt). |
nextpdf/premium | NextPDF Pro und Enterprise: Signieren, PDF/A, Factur-X. |
codeigniter4/queue | Asynchrone PDF-Generierung über GeneratePdfJob. |
Installation
Abschnitt betitelt „Installation“Installieren Sie das Paket:
composer require nextpdf/codeigniterComposer löst nextpdf/core und codeigniter4/framework gemäß den obigen Beschränkungen auf. Sie müssen weder einen Service-Provider noch ein Bundle noch eine Bootstrap-Datei bearbeiten.
Wie die Discovery funktioniert
Abschnitt betitelt „Wie die Discovery funktioniert“CodeIgniter 4 durchsucht Composer-Pakete nach Framework-Elementen, wenn Config\Modules::$discoverInComposer auf true steht; das ist der Framework-Standard. Das Paket liefert eine NextPDF\CodeIgniter\Config\Services-Klasse mit. Die Klasse liegt unter dem PSR-4-Namensraum NextPDF\CodeIgniter\, der auf src/CodeIgniter/ abgebildet wird. Das PSR-4-Autoloading von Composer wandelt diesen voll qualifizierten Klassennamen in einen Dateipfad um. Der Top-Level-Namensraum ist erforderlich (PSR-4 §x1.x2.p5, modal MUST). Das Namensraum-Präfix wird auf das Basisverzeichnis abgebildet, sodass die Klasse zu ihrer Datei aufgelöst wird (PSR-4 §x1.x3).
Der Composer-files-Autoload-Eintrag des Pakets (src/CodeIgniter/Helpers/pdf_helper.php) registriert die beiden Helper-Funktionen pdf() und pdf_document(). Der Registrar des Pakets meldet außerdem den pdf-Helper beim Helper-Loader von CodeIgniter an. Die vollständige Abfolge finden Sie unter /integrations/codeigniter/boot-and-discovery/.
Die Installation überprüfen
Abschnitt betitelt „Die Installation überprüfen“Prüfen Sie, ob Composer das Paket aufgelöst hat:
composer show nextpdf/codeigniterPrüfen Sie, ob CodeIgniter die Services-Klasse erkannt hat. Rufen Sie in einem beliebigen Controller oder in einer kurzen php spark-Route einen Service auf und prüfen Sie den Typ:
<?php
declare(strict_types=1);
use NextPDF\CodeIgniter\Config\Services;use NextPDF\Core\Document;
$document = Services::pdfDocument(false);
// $document is a fresh NextPDF\Core\Document instance.\assert($document instanceof Document);Wenn Services::pdfDocument() ein Document zurückgibt, funktioniert die Discovery. Wenn der Aufruf null zurückgibt, wurde die Discovery nicht ausgeführt. Siehe /integrations/codeigniter/troubleshooting/.
Sonderfälle & Stolpersteine
Abschnitt betitelt „Sonderfälle & Stolpersteine“- Wenn die Host-Anwendung
Config\Modules::$discoverInComposerauffalsesetzt, fügen Sienextpdf/codeigniterzur Liste$composerPackages['only']hinzu. Andernfalls überspringt die Discovery das Paket. - Ein veralteter Composer-Autoloader kann die Services-Klasse verbergen. Führen Sie nach einem Upgrade
composer dump-autoloadaus. - Das Paket deklariert
codeigniter4/queuenur als Entwicklungsabhängigkeit. Eine Produktionsanwendung, dieGeneratePdfJobabschickt, musscodeigniter4/queueselbst als Voraussetzung angeben.
Sicherheitshinweise
Abschnitt betitelt „Sicherheitshinweise“Installieren Sie über HTTPS von Packagist. Pinnen Sie die aufgelösten Versionen in composer.lock. Das Paket fügt zur Installationszeit keine Skripte hinzu. Siehe /integrations/codeigniter/security-and-operations/.
Konformität
Abschnitt betitelt „Konformität“- Die Composer-Discovery hängt vom PSR-4-Autoloading ab.
Siehe auch
Abschnitt betitelt „Siehe auch“- /integrations/codeigniter/overview/ — was das Paket bereitstellt.
- /integrations/codeigniter/quickstart/ — erstes PDF in einem Controller.
- /integrations/codeigniter/configuration/ — Konfigurationsschlüssel und Overrides.
- /integrations/codeigniter/boot-and-discovery/ — die Discovery-Abfolge im Detail.