在模型中的函数之间传递变量

时间:2013-05-07 20:52:12

标签: php codeigniter model

我在模特中有这样的功能。

function news() 
{
    $data = array(
        'title' => $this->input->post('title'),
        'date'  => $this->input->post('date'),
        'newstext' => $this->input->post('newstext'),
    );
    $this->db->insert('news', $data);
}

我希望在同一模型中的另一个函数中使用此$data['title']。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

首先我认为最好将输入值存储在控制器而不是模型中以遵循MVC模式,这样你的模型中只有数据库相关的操作,然后,你可以调用它,而控制器中的另一个函数传递给两者具有您存储在控制器中的相同输入值。

答案 1 :(得分:0)

实现这一目标的最简单方法:

在Model Class定义之后立即声明一个全局变量。

<强> e.g。

class ModalName extends CI_Model()
{
    public $title;

    function news() 
    {
        $data = array(
            'title' => $this->input->post('title'),
            'date'  => $this->input->post('date'),
            'newstext' => $this->input->post('newstext'),
        );
        $this->db->insert('news', $data);
        $this->title = $data['title'];
    }
}

,然后

$this->title将在您的模型类中的每个函数中可用。