我刚开始学习Yii
,我在其中创建了一个PostController
Controller。在此 Controller 中,我有一个使用 Sessions
的要求。
所以我创建了一个构造方法,其代码如下
public $session;
public function __construct() {
$this->session = new CHttpSession;
$this->session->open();
}
但在创建此构造函数后, Controller 无法正常工作并报错。删除此代码后,我的 Controller 运行良好。我在构造函数中编写了这段代码,以便在 actionCreate
和 actionUpdate
的每个方法中不初始化 Session
。
所以我的问题是我们如何在 Yii
中创建构造函数?
谢谢
最佳答案
你只是忘了调用父构造函数:
public function __construct()
{
.....
parent::__construct();
}
你可以使用 beforeAction
而不是覆盖 __construct
。
Sergey 是对的,默认情况下 Yii 将启动 session (autoStart
),您只需要使用 Yii::app()->session
,例如:
Yii::app()->session['var'] = 'value';
关于php - 在 Yii 的 Controller 中创建构造方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15607722/