为了账号安全,请及时绑定邮箱和手机立即绑定

yii 什么时候应用user组件?

yii 什么时候应用user组件?

Yii
缥缈止盈 2018-11-14 19:15:01
yii 什么时候应用user组件
查看完整描述

1 回答

?
MM们

TA贡献1886条经验 获得超2个赞

yii/web/user
enableAutoLogin:如果未登录,则会从cookie中登录
autoRenewCookie:
如果登录了,则会使用renewIdentityCookie更新cookie的expire过期时间.确保cookie的过期时间是保持一直最后的时
间.并保存到response的cookie里..如果是false,过期时间则按登录的时候开始计算,否则按最后访问的时间计算
init
1.组件初始化的时候,会打开session,
2.renewAuthStatus 如果用户已经登录,会检查authTimeout.如果超时则登出,但不销毁session
3.loginByCookie 如果enableAutoLogin而且用户是guest,则会从cookie中登录用户,如果已经登录则会更新过期时间
loginByCookie 和login的区别
开启自动登录的话.会执行loginByCookie触发的EVENT_BEFORE_LOGIN和EVENT_AFTER_LOGIN事件的第二个参数为true..会验证validateAuthKey
---------------常用函数----------------------------
login
logout
checkAccess
getId
getIdentity
-----------------------------------------------------------------
登录
1.session_regenerate_id(true); 如果设置为true,则更变当前session_id的值,并清空当前session数组..默认是false,调用的时候会更改当前session_id的值,并保留session数组中的值。
2.设置identity
3.设置idVar到session中
4.设置authTimeoutVar到session
5.使用sendIdentityCookie更新cookie中的过期时间
登出
1.如果authTimeout存在,则会检查session中的authTimeoutVar是否超时,如果超时则登出删除cookie,和Identity = null但是不销毁session;
2.logout(true),则会销毁session
检查是否登录
getIsGuest 从session中获取idVar.如果存在则写入Identity



查看完整回答
反对 回复 2018-12-07
  • 1 回答
  • 0 关注
  • 742 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信