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

yii user 组件的更多相关文章

  1. (转)Yii的组件机制之一:组件基础类CComponent分析

    Yii的组件机制 组件机制,是Yii整个体系的思想精髓,在使用Yii之前,最应该先了解其组件机制,如果不了解这个机制,那么阅读Yii源代码会非常吃力.组件机制给Yii框架赋予了无穷的灵活性和可扩展性, ...

  2. yii CComponent组件 实例说明1

    yii CComponent组件 实例说明 yii中的module,controller都是CComponent的子类,可以说yii的架构基石就是依托在CCompnent基础上的,这里研究下CComp ...

  3. yii 自定义组件的调用

    1,main.php 里面导入 'import' => array(            'application.components.*'        ), 2,application/ ...

  4. Yii 日志组件

    详细的介绍查看官网的document:http://www.yiiframework.com/doc/guide/1.1/en/topics.logging 也可以看 Yii 1.1 Applicat ...

  5. ios推送基于YII第三方组件的类库

    <?php namespace common\extensions\push; use \CComponent; /** * @desc iphone推送的接口程序 */ class ApnsP ...

  6. YII框架组件CListView实现分页

    效果是普通分页就不截图了... C控制器方法如下: $criteria=new CDbCriteria; $criteria->condition = "`status`={$newS ...

  7. yii框架

    Yii Framework是一个基于组件.用于开发大型 Web 应用的高性能 PHP 框架.Yii提供了今日Web 2.0应用开发所需要的几乎一切功能.Yii是最有效率的PHP框架之一.Yii是创始人 ...

  8. Yii系列教程(四):使用Memcache保存会话

    1环境准备 安装Memcached服务端: yum -y installmemcached.x86_64 安装PHP-Memcache扩展: yum -y installphp-pecl-memcac ...

  9. yii学习随感

    最近我们公司信易网络在用yii开发一个项目自己临时学习了一下yii 把学习感悟和大家一起分享一下 Yii Framework是一个基于组件.用于开发大型 Web 应用的高性能 PHP 框架.Yii提供 ...

随机推荐

  1. android 触摸事件、点击事件的区别

    针对屏幕上的一个View控件,Android如何区分应当触发onTouchEvent,还是onClick,亦或是onLongClick事件? 在Android中,一次用户操作可以被不同的View按次序 ...

  2. 【windows核心编程】DLL相关(3)

    DLL重定向 因为DLL的搜索路径有先后次序,假设有这样的场景:App1.exe使用MyDll1.0.dll, App2.exe使用MyDll2.0.dll, MyDll1.0 和 MyDll2.0是 ...

  3. Codeforces Round #365 (Div. 2) C - Chris and Road 二分找切点

    // Codeforces Round #365 (Div. 2) // C - Chris and Road 二分找切点 // 题意:给你一个凸边行,凸边行有个初始的速度往左走,人有最大速度,可以停 ...

  4. javadoc注释规范

    javadoc做注释 一. Java 文档 // 注释一行 /* ...... */ 注释若干行 /** ...... */ 注释若干行,并写入 javadoc 文档 通常这种注释的多行写法如下: / ...

  5. 智能会议白板系统CodeMap

    4个人3个月,1个项目,47个工程->白板系统 白板部分: 识别部分: 望多指教.

  6. poj1001 Exponentiation

    Description Problems involving the computation of exact values of very large magnitude and precision ...

  7. [置顶] 文件和目录(二)--unix环境高级编程读书笔记

    在linux中,文件的相关信息都记录在stat这个结构体中,文件长度是记录在stat的st_size成员中.对于普通文件,其长度可以为0,目录的长度一般为1024的倍数,这与linux文件系统中blo ...

  8. shell脚本的入参

    shell脚本参数可以任意多,但只有前9个可以被访问,使用shift命令可以改变这个限制.参数从第一个开始,在第九个结束.$0 程序名字$n 第n个参数值,n=1..9 $* 所有命令行参数$@    ...

  9. Java学习备忘录

    1.工程名首字母可以小写,类名首字母大写 2.批量注释: Eclipse : ctrl+/  如果不行 用 ctrl+7 或者 ctrl+shift+c Notepad++ : ctrl+q 或者 c ...

  10. 备份spfile 中的一个误区

    某书载在备份控制文件的时候,也会自动的备份初始化参数文件,抱着愚钝的 完事亲力亲为的态度,做了如下的小验证. RMAN> list backup of controlfile; specific ...