2

我如何访问敏捷工具包页面中的会话变量。我正在使用 $this->getUser() 但它不起作用

4

1 回答 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 回答