【问题标题】:DOMPDF error: Class Dompdf\FrameDecorator\AbstractFrameDecorator not fundDOMPDF 错误:类 Dompdf\FrameDecorator\AbstractFrameDecorator 没有基金
【发布时间】:2017-03-22 08:04:53
【问题描述】:

我收到此错误:
致命错误:在 /public_html/vendor/dompdf/dompdf/src/FrameDecorator/ 中找不到类“Dompdf\FrameDecorator\AbstractFrameDecorator”第 23 行的 Page.php
本地运行正常,但在实时服务器上出现该错误

$dompdf = new Dompdf();
$dd = (OBJECT)array(
    'ss'=>$data->ss,
    'cr'=>date('Y-m-d'),
    'c_n'=>$data->c_n
);
$path = PHCERT .'/';
$dompdf->set_option('defaultFont', 'Courier');
$view = $this->view()->make('pdf.cert', compact('dd'))->render();
$dompdf->loadHtml($view);
$dompdf->setPaper('A4', 'landscape');

$dompdf->render();
$oupdf = $dompdf->output();
$f_name = $data->names.'_'.time().'_'.$data->radn.'.pdf';

if(!file_put_contents($path . $f_name, $oupdf)) {
    $res['file_path'] = 'fail';
}

我的 php 错误日志并没有说太多,但是同样的错误,apache 错误日志没有说任何关于它的内容......所以,我不知道那个错误只发生在实时服务器上...... 实时服务器上的 php 版本是 5.6.30
本地服务器上的 php 版本是 5.6.25

我正在使用最新版本的 dompdf 以及我的其他库。我正在使用作曲家来更新我的库... 我不知道是什么问题...

【问题讨论】:

  • 如果你包含了 DOMPDF,你检查你的 composer.json 和 app.php 了吗?
  • 是的,composer.json 是正确的,app.php(名称不同,但我知道你的意思)加载正常(我正在使用 PSR-4 btw),本地所有工作正常,实时服务器只是那部分......所有文件都已部署到服务器......
  • idk 如果这可行,但将其从 app.php(或您所指的任何文件)中删除,尝试 composer update,然后再次粘贴并查看它是否有效
  • 你在正确的轨道上,我所做的是,composer dump-autoload -o 然后一切正常...我不知道是什么问题也许ClassLoader.php 文件不是正确更新,我所做的,实际上更新了......不知道......
  • 很高兴它成功了。干杯!

标签: php dompdf


【解决方案1】:

更新作曲家 PSR-4 似乎解决了这个问题:composer dump-autoload -o 实际上解决了这个问题。

我确实在更新之前检查了该类是否存在,之后文件 dompdf 没有太大变化,特别是 FrameDecorator 中的文件,它们都没有改变,问题仍然存在,什么可能导致该错误显示? .. 没有糟糕的 html,不需要 html5,也没有糟糕的 css……谁知道呢……

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-20
    • 2023-01-22
    • 1970-01-01
    • 1970-01-01
    • 2018-12-10
    • 1970-01-01
    相关资源
    最近更新 更多