codeigniter - 包含许多类的最佳实践库

时间:2011-02-11 16:15:51

标签: php inheritance codeigniter driver libraries

我正在为我们的CodeIgniter应用程序构建一个库,但它需要很多类(目前我已经12岁了)。

是否有将这些客户端打包到一个库中的最佳实践。所以我可以打一个电话加载它。即:

$this->load->library('soaplibrary');

谢谢!

3 个答案:

答案 0 :(得分:8)

作为Summer points out,他们在CI 2.0中以驾驶员的概念稍微优雅地处理了这种情况。

使用Driver,您实际上在'libraries'目录中创建了一个子目录,其中包含您的'super'类,以及另一个'child'类目录。更好的视觉表现结构...

enter image description here

这取自Here

一旦您构建了库,here is the documentation就如何使用它。

答案 1 :(得分:4)

在CI 2.0中,有驱动程序可以处理这种情况。祝你好运!

答案 2 :(得分:1)

在CodeIgniter 3.1.9中,加载库文件时,该文件中的所有类都包含在代码中

让我们在soaplibrary.php中说

class SoapLibrary {
   public function someMethod(...

class Test {
   public function anotherMethod(...

在您的控制器中,您可以执行以下操作:

$this->load->library('soaplibrary');

//now on you can do
$this->soaplibrary->someMethod();

//but also
$test = new Test();
$test->anotherMethod();

CodeIgniter 试图调用类SoapLibrary的构造函数,因此具有该名称的类必须在其中