Класс sfUser
(который вы получаете с $this->getUser()
) хранит все свои атрибуты в sfNamespacedParameterHolder
. Таким образом, функция setAttribute()
на sfUser
является просто прокси для sfNamespacedParameterHolder::setAttribute()
. Вы можете получить ссылку на этого владельца с sfUser::getAttributeHolder()
.
sfNamespacedParameterHolder
также имеет функцию clear()
, которая очищает все атрибуты.
Чтобы очистить все атрибуты, используйте:
$this->getUser()->getAttributeHolder()->clear()
.
(Обратите внимание, что вы все равно будете аутентифицированы (например, вошли в систему), когда очистите держатель атрибута).