Laravel生成PDF时出现DOMDocument属性未初始化错误(共享主机)
Laravel 10 + dompdf 部署到cPanel共享主机后PDF生成报错问题
本地基于Laravel 10、PHP 8.1.2运行的项目,生成PDF文档正常,但部署到搭载cPanel的共享主机后出现报错。
相关代码
protected function passedValidation() { Pdf::loadView('quotation.quotationpdf', [ 'taxes' => $this->taxes, 'force_majuere' => $this->force_majuere, ])->save(storage_path('app/public/quotations/quotation.pdf')); }
报错详情
报错指向代码中'force_majuere' => $this->force_majuere,这一行,错误信息:
Typed property DOMDocument::$documentElement must not be accessed before initialization
排查情况
- 已查阅相关资料但未找到有效解决方案,部分方案建议升级PHP到8.2,但服务器不支持该版本
- 本地测试PHP 8.1.2和8.2环境均无问题,推测问题可能源于PHP小版本差异(本地8.1.2 vs 服务器8.1.21)或当前使用的laravel-dompdf 2.0.1版本导致
内容的提问来源于stack exchange,提问作者Arjan Shrestha
相关产品推荐
相关产品推荐

