yii user 组件
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 组件的更多相关文章
- (转)Yii的组件机制之一:组件基础类CComponent分析
Yii的组件机制 组件机制,是Yii整个体系的思想精髓,在使用Yii之前,最应该先了解其组件机制,如果不了解这个机制,那么阅读Yii源代码会非常吃力.组件机制给Yii框架赋予了无穷的灵活性和可扩展性, ...
- yii CComponent组件 实例说明1
yii CComponent组件 实例说明 yii中的module,controller都是CComponent的子类,可以说yii的架构基石就是依托在CCompnent基础上的,这里研究下CComp ...
- yii 自定义组件的调用
1,main.php 里面导入 'import' => array( 'application.components.*' ), 2,application/ ...
- Yii 日志组件
详细的介绍查看官网的document:http://www.yiiframework.com/doc/guide/1.1/en/topics.logging 也可以看 Yii 1.1 Applicat ...
- ios推送基于YII第三方组件的类库
<?php namespace common\extensions\push; use \CComponent; /** * @desc iphone推送的接口程序 */ class ApnsP ...
- YII框架组件CListView实现分页
效果是普通分页就不截图了... C控制器方法如下: $criteria=new CDbCriteria; $criteria->condition = "`status`={$newS ...
- yii框架
Yii Framework是一个基于组件.用于开发大型 Web 应用的高性能 PHP 框架.Yii提供了今日Web 2.0应用开发所需要的几乎一切功能.Yii是最有效率的PHP框架之一.Yii是创始人 ...
- Yii系列教程(四):使用Memcache保存会话
1环境准备 安装Memcached服务端: yum -y installmemcached.x86_64 安装PHP-Memcache扩展: yum -y installphp-pecl-memcac ...
- yii学习随感
最近我们公司信易网络在用yii开发一个项目自己临时学习了一下yii 把学习感悟和大家一起分享一下 Yii Framework是一个基于组件.用于开发大型 Web 应用的高性能 PHP 框架.Yii提供 ...
随机推荐
- android 触摸事件、点击事件的区别
针对屏幕上的一个View控件,Android如何区分应当触发onTouchEvent,还是onClick,亦或是onLongClick事件? 在Android中,一次用户操作可以被不同的View按次序 ...
- 【windows核心编程】DLL相关(3)
DLL重定向 因为DLL的搜索路径有先后次序,假设有这样的场景:App1.exe使用MyDll1.0.dll, App2.exe使用MyDll2.0.dll, MyDll1.0 和 MyDll2.0是 ...
- Codeforces Round #365 (Div. 2) C - Chris and Road 二分找切点
// Codeforces Round #365 (Div. 2) // C - Chris and Road 二分找切点 // 题意:给你一个凸边行,凸边行有个初始的速度往左走,人有最大速度,可以停 ...
- javadoc注释规范
javadoc做注释 一. Java 文档 // 注释一行 /* ...... */ 注释若干行 /** ...... */ 注释若干行,并写入 javadoc 文档 通常这种注释的多行写法如下: / ...
- 智能会议白板系统CodeMap
4个人3个月,1个项目,47个工程->白板系统 白板部分: 识别部分: 望多指教.
- poj1001 Exponentiation
Description Problems involving the computation of exact values of very large magnitude and precision ...
- [置顶] 文件和目录(二)--unix环境高级编程读书笔记
在linux中,文件的相关信息都记录在stat这个结构体中,文件长度是记录在stat的st_size成员中.对于普通文件,其长度可以为0,目录的长度一般为1024的倍数,这与linux文件系统中blo ...
- shell脚本的入参
shell脚本参数可以任意多,但只有前9个可以被访问,使用shift命令可以改变这个限制.参数从第一个开始,在第九个结束.$0 程序名字$n 第n个参数值,n=1..9 $* 所有命令行参数$@ ...
- Java学习备忘录
1.工程名首字母可以小写,类名首字母大写 2.批量注释: Eclipse : ctrl+/ 如果不行 用 ctrl+7 或者 ctrl+shift+c Notepad++ : ctrl+q 或者 c ...
- 备份spfile 中的一个误区
某书载在备份控制文件的时候,也会自动的备份初始化参数文件,抱着愚钝的 完事亲力亲为的态度,做了如下的小验证. RMAN> list backup of controlfile; specific ...