【问题标题】:Symfony : Attempted to load classSymfony:尝试加载类
【发布时间】:2016-04-27 15:06:38
【问题描述】:

我已经在我的 Symfony 上安装了 setasign/fpdi,我创建了一个生成 PDF 的类:

class MerchPDF extends \FPDI {.... }

我有这个错误:

尝试从全局命名空间加载类“FPDI”。 您是否忘记了“使用”语句?

在本地,没问题。 在生产中,有这个错误......所有文件都是平等的。

你有想法吗?

谢谢

【问题讨论】:

  • 错误发生在fpdi_bridge中。你找到解决办法了吗?

标签: classnotfoundexception symfony fpdi


【解决方案1】:

请问您是否已经尝试从 composer.json 的类映射中删除 TCPDF(如果也已安装)和 FPDI。然后将两者都添加:“tecnick.com/tcpdf”:“dev-master”,“setasign/fpdi”:“1.4.2(这里是版本)”,到composer.json的“require”部分?

【讨论】:

    【解决方案2】:

    如果您需要 setasign/fpdi 作为 Composer 依赖项,则基本 Fpdi 类在全局命名空间中不可用,但在 setasign\Fpdi 命名空间中可用。所以你的课程应该这样开始:

    use setasign\Fpdi\Fpdi;
    
    class MerchPDF extends Fpdi {
        ...
    }
    

    不确定它为什么在本地工作,可能您已经通过其他方式(即不是通过 composer)安装了 Fpdi,因此它可以作为全局命名空间中的一个类使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-30
      • 2018-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-22
      相关资源
      最近更新 更多