我如何访问敏捷工具包页面中的会话变量。我正在使用 $this->getUser() 但它不起作用
问问题
259 次
1 回答
3
在敏捷工具包中,每个对象都可以注册会话变量。这样做是为了让您有多个对象不雅地工作而不是冲突。
基本功能是:
$o->memorize('handle',123);
$o->recall('handle');
$o->forget('handle');
如果您有意共享数据,则可以使用
$o->api->memorize('my_global_var',123);
既然您提到了用户 ID,那么授权对象会处理自己的变量。同样,它使用 memorize/recall 来操作身份验证数据设置,但您可以获得如下信息:
$user_id = $o->api->auth->get('id');
执行 $auth->check() 时,会保存查询返回的所有字段。如果您想添加更多字段,请执行
$auth->dq->field('extrainfo');
并且该字段将由 DSQL 选择并存储在会话中以供进一步检索$auth->get('extrainfo')
要创建 getUser 函数,通常您会在 API 中定义它:
function getUser(){
return $this->add('Model_User')->loadData($this->auth->get('id'));
}
并用于$this->api->getUser()
检索数据。
于 2011-04-21T17:49:05.223 回答