如何在Codeigniter中使用全局变量?

时间:2013-12-28 07:58:25

标签: php codeigniter codeigniter-2

    <?php
    class chargemen extends CI_Controller
    {
        public function __construct()
        {
            parent::__construct();
        }

    public $jobs_session=array(); 

    public function set_jobs($array)
    {
    $this->jobs_session=$array;
    }
    public function get_jobs()
    {
    return $this->jobs_session; //when i'm acessing this functions it returns null array
    }
    public function form()
    {
    $a=$this->input->post();
    $this->set_jobs($a); 
}

  ?>

是否有可能在ci中访问全局变量,我尝试访问它,但它会返回null array。你可以帮助我访问它或建议一种不使用会话来保存数据的最佳方法n cookies

1 个答案:

答案 0 :(得分:0)

您的代码运行正常,您只需调用调用set_jobs操作的函数。

在你的情况下,我在我的索引函数中调用了form()。

$this->form();
$res = $this->get_jobs(); 
print_r($res);

我已在我的控制器中测试了以下代码

public function index()
{
     $this->form();
     $res = $this->get_jobs(); 
     print_r($res);
}


public $jobs_session=array(); 

public function set_jobs($array)
{
    $this->jobs_session=$array;
}
public function get_jobs()
{
    return $this->jobs_session; //when i'm acessing this functions it returns null array
}
public function form()
{    
    $a = array('1','2','3');
    //$a=$this->input->post();
    $this->set_jobs($a); 
}

请注意,您将无法在此控制器范围之外访问此方法。