CodeIgniter - 多个控制器中可用的功能

时间:2011-04-01 01:07:27

标签: function codeigniter controller

我对CodeIgniter比较陌生,到目前为止,我的项目完全是使用Controllers和Views创建的。然而,随着它变得越来越复杂,我发现有些功能我已经复制粘贴到多个控制器中 - 这并不理想,因为编辑它需要记住编辑所有其他控制器。

有许多我不了解的CI功能 - 模型,助手,扩展“控制器”等等。我应该在哪里寻找以实现上述目标?我想我也可以直接import()一段代码,虽然我觉得这不是“CodeIgniter方式”。

3 个答案:

答案 0 :(得分:4)

将所有“实用程序”功能放入“帮助程序管理器”并访问它。

http://codeigniter.com/user_guide/general/helpers.html

答案 1 :(得分:2)

或者创建一个基本控制器,并从中扩展其他控制器。

我相信Phil Sturgeon有一个指南:http://philsturgeon.co.uk/blog/2010/02/CodeIgniter-Base-Classes-Keeping-it-DRY

答案 2 :(得分:2)

<强> base_controller.php

<?php
class Base_Controller extends CI_Controller {
    function __construct()
    {
        parent::__construct();
    }
    function base_function(){

        }
}
?>

<强> other_controller.php

<?php
require_once('base_controller.php');
class Other_Controller extends Base_Controller{
    function __construct()
    {
        parent::__construct();
    }
    function index()
    {
    $this->base_function(); 
    }
}
?>