CodeIgniter 4 için NextPDF kurulumu
Genel bakış
“Genel bakış” başlıklı bölümPaketi Composer ile kurun. CodeIgniter 4, Services sınıfını ve yardımcı işlevleri otomatik olarak keşfeder; bu nedenle bunları elle kaydetmeniz gerekmez.
Gereksinimler
“Gereksinimler” başlıklı bölümBu kısıtlamalar için nihai kaynak, paketin composer.json dosyasıdır. Aşağıdaki tablo, hızlı başvuru için bunları yeniden listeler.
| Bağımlılık | Kısıtlama | Notlar |
|---|---|---|
| PHP | >=8.4 <9.0 | PHP 8.4’ü hedefler. |
nextpdf/core | ^3.0 || ^5.2 | NextPDF motoru. |
codeigniter4/framework | ^4.6 | CodeIgniter 4.7.0 ile doğrulandı. |
ext-mbstring | çalışma zamanında gerekli | İşlem başına bir kez doğrulanır. |
ext-zlib | çalışma zamanında gerekli | İşlem başına bir kez doğrulanır. |
İsteğe bağlı paketler suggest altında bildirilir ve şu özellikleri ekler:
| Paket | Eklediği özellikler |
|---|---|
nextpdf/artisan | Belge derlemesi sırasında otomatik olarak algılanan Chrome DevTools Protocol (CDP) HTML işleyicisi. |
nextpdf/premium | NextPDF Pro ve Enterprise özellikleri: imzalama, PDF/A, Factur-X. |
codeigniter4/queue | Eşzamansız PDF oluşturma için GeneratePdfJob. |
Kurulum
“Kurulum” başlıklı bölümPaketi Composer ile kurun:
composer require nextpdf/codeigniterComposer, nextpdf/core ve codeigniter4/framework paketlerini yukarıdaki kısıtlamalara göre çözümler. Bir hizmet sağlayıcıyı, paketi veya önyükleme dosyasını düzenlemeniz gerekmez.
Keşfin işleyişi
“Keşfin işleyişi” başlıklı bölümÇerçevenin varsayılanı olarak Config\Modules::$discoverInComposer true olduğunda, CodeIgniter 4 çerçeve bileşenleri için Composer paketlerini tarar. Paket, bir NextPDF\CodeIgniter\Config\Services sınıfı içerir. Bu sınıf, PHP Standard Recommendation 4 (PSR-4) kapsamındaki NextPDF\CodeIgniter\ ad alanında bulunur ve bu ad alanı src/CodeIgniter/ dizinine eşlenir. Composer’ın PSR-4 otomatik yükleyicisi, tam nitelikli sınıf adını bir dosya yoluna dönüştürür. Üst düzey ad alanı zorunludur (PSR-4 §x1.x2.p5, modal MUST). Ad alanı öneki temel dizine eşlendiğinden sınıf kendi dosyasına çözümlenir (PSR-4 §x1.x3).
Paketin Composer files otomatik yükleme girdisi (src/CodeIgniter/Helpers/pdf_helper.php), iki yardımcı işlevi kaydeder: pdf() ve pdf_document(). Paketin Registrar bileşeni de pdf yardımcısını CodeIgniter’ın yardımcı yükleyicisine bildirir. Tam sıralama için bkz. /integrations/codeigniter/boot-and-discovery/.
Kurulumu doğrulama
“Kurulumu doğrulama” başlıklı bölümComposer’ın paketi çözümlediğini doğrulayın:
composer show nextpdf/codeigniterCodeIgniter’ın Services sınıfını keşfettiğini doğrulayın. Herhangi bir denetleyicide veya kısa bir php spark rotasında hizmeti çağırıp türünü doğrulayın:
<?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);Eğer Services::pdfDocument() bir Document döndürüyorsa keşif çalışıyordur. null döndürüyorsa keşif çalışmıyordur. Bkz. /integrations/codeigniter/troubleshooting/.
Uç durumlar ve dikkat edilmesi gerekenler
“Uç durumlar ve dikkat edilmesi gerekenler” başlıklı bölüm- Ana uygulama
Config\Modules::$discoverInComposerdeğerinifalseolarak ayarlarsa,nextpdf/codeigniterpaketini$composerPackages['only']listesine ekleyin. Aksi takdirde CodeIgniter bu paketi atlar. - Eski bir Composer otomatik yükleyicisi, Services sınıfını gizleyebilir. Yükseltme yaptıktan sonra
composer dump-autoloadkomutunu çalıştırın. - Paket,
codeigniter4/queuepaketini yalnızca geliştirme bağımlılığı olarak bildirir.GeneratePdfJobgörevini gönderen bir üretim uygulaması,codeigniter4/queuepaketini doğrudan bağımlılık olarak eklemelidir.
Güvenlik notları
“Güvenlik notları” başlıklı bölümPaketi Packagist’ten HTTPS üzerinden kurun. Çözümlenen sürümleri composer.lock dosyasında sabitleyin. Paket, kurulum sırasında çalışan komut dosyaları eklemez. Bkz. /integrations/codeigniter/security-and-operations/.
Uyumluluk
“Uyumluluk” başlıklı bölüm- Composer keşfi, PSR-4 otomatik yüklemesine bağlıdır.
Ayrıca bkz.
“Ayrıca bkz.” başlıklı bölüm- /integrations/codeigniter/overview/ — paket yetenekleri.
- /integrations/codeigniter/quickstart/ — bir denetleyicide ilk PDF’nizi oluşturun.
- /integrations/codeigniter/configuration/ — yapılandırma anahtarları ve geçersiz kılmalar.
- /integrations/codeigniter/boot-and-discovery/ — ayrıntılı keşif sıralaması.