- Is gridonic/princexml-php a Laravel package?
- No. It is a thin PHP5-era wrapper around the commercial PrinceXML binary, not a Laravel package. It has no service provider, facade, config publishing, or queue integration, and the repository is archived.
- How do I install gridonic/princexml-php with Composer?
- You can theoretically run composer require gridonic/princexml-php, but it is an archived PHP5/PSR-0 package last released in 2017. You must also install and license the PrinceXML binary separately. For a modern Laravel app, installing it directly is not recommended; a first-party CLI adapter is safer.
- Does gridonic/princexml-php work with Laravel 10 or 11?
- There is no declared Laravel support, service provider, facade, or test coverage for Laravel 10/11. The package predates modern Laravel and PHP 8, so it is not a reliable fit. If you need PrinceXML in Laravel 10/11, wrap the Prince CLI in your own service instead.
- Does gridonic/princexml-php support PHP 8?
- No. The repository targets PHP5 and PSR-0, was last released in 2017, and is archived. Expect friction with PHP 8 strictness and Composer 2 autoloading. Do not treat it as PHP 8 compatible without a fork and tests.
- Do I need a PrinceXML license to use this wrapper?
- Yes. PrinceXML is a separate commercial binary, and this wrapper does not bundle or license it. You must install, license, and pin the PrinceXML binary in each runtime environment. Confirm licensing before any proof of concept.
- How do I set the PrinceXML binary path in gridonic/princexml-php?
- The wrapper accepts configurable binary path and command options, but it has no Laravel config publishing or service provider. You pass those values explicitly from your application code or a small adapter. Validate the path and options, and avoid interpolating user input into shell commands.
- Is gridonic/princexml-php safe for user-supplied HTML or URLs?
- Treat any user-influenced HTML, URLs, fonts, or output paths as a security risk. The archived wrapper's handling of shell arguments and temporary files is not clearly maintained or tested. Sanitize inputs, escape shell arguments, enforce timeouts, and isolate temp directories before using it in production.
- What are alternatives to gridonic/princexml-php for HTML to PDF in Laravel?
- For PrinceXML-specific fidelity, the safest alternative is a small first-party Laravel service around the Prince CLI with safe arguments, timeouts, and logging. If you do not need Prince, evaluate maintained HTML-to-PDF packages or commercial services instead. The archived wrapper should not be a strategic dependency.
- Can I generate PDFs in a Laravel queue with gridonic/princexml-php?
- The package provides no queue integration, job batching, or Laravel-native abstractions. You could call it inside a queued job, but you would own timeout handling, temp file cleanup, retries, and failure mapping. For large documents, build that logic in your own service rather than relying on the wrapper.
- How do I migrate from gridonic/princexml-php to a maintained solution?
- Do not install the archived wrapper into a new Laravel app. Prove the PrinceXML binary independently, then implement a Laravel service that builds safe command arguments and maps failures to domain errors. If legacy code depends on the wrapper, fork it, convert PSR-0 to PSR-4, add PHP constraints and tests, and isolate it behind an interface.