【问题标题】:using classes in CodeIgniter在 CodeIgniter 中使用类
【发布时间】:2014-03-17 15:09:38
【问题描述】:

我正在使用 CodeIgniter,并且我有一个 PHP 类用于构建我的系统的报告(报告)。该类使用另一个类,用于构建此报告的图形(ReportG)。

我将 Report 类存储为库,但在这个类中我使用 ReportG 的对象和方法。

我需要重写我的 Report 类以从库中加载此类 (ReportG)?

有没有什么方法可以以传统方式使用 CodeIgniter 中的类:

$a = new MyClass();
$a->GetGraphics();

【问题讨论】:

  • 使用传统方法有什么具体原因吗?

标签: php codeigniter class


【解决方案1】:

当然有,但是你必须放弃使用 CodeIgniter 的加载器。只需include 文件并像使用任何其他类一样使用它。您最终会紧密耦合,但 CI 中没有依赖注入,因此您可以轻松做到这一点。

include( FCPATH . 'application/libraries/mylib.php' );

class Thing extends CI_Controller
{
    public function x()
    {
        $a = new mylib();
    }
}

【讨论】:

  • 可以,您也可以使用config.php 或通过内置的$this->loadautoload
  • @Patrick 如果您阅读原始问题,发帖者特别想使用new 关键字('传统方式')
  • @Erik 我指的是您仍然可以将new 关键字用于自动加载或通过$this->load 包含的项目
猜你喜欢
  • 1970-01-01
  • 2017-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-24
  • 2020-12-16
  • 1970-01-01
相关资源
最近更新 更多