В гибком наборе инструментов каждый объект может регистрировать переменные сеанса. Это сделано для того, чтобы несколько объектов работали неприлично и не конфликтовали.
Основные функции:
$o->memorize('handle',123);
$o->recall('handle');
$o->forget('handle');
Если вы намеренно хотите поделиться данными, тогда вы можете использовать
$o->api->memorize('my_global_var',123);
Поскольку вы упомянули об идентификаторе пользователя, объект авторизации обрабатывает свои собственные переменные. Точно так же он использует запоминание / отзыв для манипулирования настройками данных аутентификации, но вы можете получить такую информацию:
$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()
для извлечения данных.