Codeigniter:无法找到指定的类:Exceptions.php

时间:2013-08-07 12:45:19

标签: codeigniter mpdf

这是我的控制器:

$html = $this->load->view('print_po', $po, TRUE);
$this->load->library('pdf');
$pdf = $this->pdf->load();

现在我已尝试并评论每一行,而显示错误的那一行是:

$pdf = $this->pdf->load();

这是我在应用程序/库中的库类:

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class pdf {

    function pdf()
    {
        $CI = & get_instance();
        log_message('Debug', 'mPDF class is loaded.');
    }

    function load($param=NULL)
    {
        include_once APPPATH.'/third_party/mpdf/mpdf.php';

        if ($params == NULL)
        {
            $param = '"en-GB-x","A4","","",10,10,10,10,6,3';
        }

        return new mPDF($param);
    }
}

只有在将代码从一个服务器移动到另一个服务器之后才会出现错误(错误发生在我认为区分大小写的CentOS服务器上)。我的问题是:我应该修改什么,以便codeIgniter正常加载Exceptions.php?

1 个答案:

答案 0 :(得分:1)

首先,删除/third_party短语中第一个的正斜杠:

include_once APPPATH.'third_party/mpdf/mpdf.php';

CodeIgniter使用尾部斜杠定义APPPATH常量。看看index.php

define('APPPATH', $application_folder.'/');

其次,确保文件/文件夹名称与您编写的名称相同。 最好将它们全部保持为小写。 Here是一个相关主题。

<强>更新

班级名称应为大写。在这种情况下,请将pdf更改为Pdf

class Pdf {
 // ...
}

From CI Documentation:

命名约定:

  • 文件名必须大写。例如:Myclass.php
  • 类声明必须大写。例如:class Myclass
  • 班级名称和文件名必须匹配。