十月 CMS 包括 class

October CMS include class

我想在我的 october 插件中使用 FPDF class 从一些记录数据创建 PDF。 在我的插件目录中,我创建了 classes 文件夹,在这里我创建了 fpdf.php class 并设置了命名空间

namespace Author\Pluginname\Classes; 

在我的控制器中,我使用

use Author\Pluginname\Classes\TCPDF;

并创建 public 函数 createPdf($id) 我设置

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

但我收到错误 Class 'Author\Pluginname\Classes\TCPDF' 未找到

完全控制者

<?php namespace Author\Pluginname\Controllers;

use Backend\Classes\Controller;
use BackendMenu;
use Author\Pluginname\Classes\TCPDF;

class Reservations extends Controller
{
    public $implement = ['Backend\Behaviors\ListController', 'Backend\Behaviors\FormController'];

    public $listConfig = 'config_list.yaml';
    public $formConfig = 'config_form.yaml';

    public function __construct()
    {
        parent::__construct();
    }

    public function createPdf($id)
    {
        $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
    }
}

我做错了什么?

我猜是文件名问题。

Directory structure and File Name should look like this.

Your FPDF.php file code should look like this.

<?php namespace HardikSatasiya\SoTest\Classes;

class FPDF {

    public static function hello() {
      echo "<pre/>";print_r('its ok');exit();
      // .. other code
    }

    // .. other code

}

You can use it like this

use HardikSatasiya\SoTest\Classes\FPDF;

function onStart() {

    $fpdf = new FPDF();
    // .. other code
}

那么它应该可以正常工作了。

如有疑问请评论。