【发布时间】:2016-03-29 03:59:39
【问题描述】:
我有一类静态函数(常用实用函数),我希望将其加载到 codeigniter 中。目前我使用include_once(...) 正常加载它,它按预期工作。
但是,我想使用 codeigniter 的方法来加载它。我知道我应该将我的类文件保存到 third_party 目录中;并且我应该创建一个需要我的类的库类(将其保存在库目录中)。
下面是三个组件,但它不起作用。
1
// my class, saved at: APPPATH.'third_party/My_Class.php'
class My_Class
{
public static function my_static_utility_method ( )
{
return "booger" ;
}
// ...
}
2 - 我知道我应该创建一个遵循“库”实例化的 CI 规则的包装器:
// saved at: APPPATH.'libraries/Library_Wrapper.php'
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Library_Wrapper
{
public function __construct()
{
require_once APPPATH.'third_party/My_Class.php';
}
}
3 - 现在我想从我的控制器访问 My_Class 的静态方法:
// saved at: APPPATH.'controllers/my_controller.php'
class My_Controller extends CI_Controller
{
public function __constructor( )
{
parent::__construct();
$this->load->library( 'Library_Wrapper' ) ;
}
public function some_function()
{
echo $this->My_Class->my_static_utility_method( ) ;
}
}
【问题讨论】: