yii 用户登录验证(cwebuser) yii 用户登录 (记)
2020-11-26 17:08
标签:cWeb class ext get 文件 com yii 的确是一个强大而臃肿的框架,简单的小项目,或者只做后台接口调用的项目,建议不要用。 今天记录一下yii使用中cwebuser(Yii::app()->user->login())登录; 1、准备工作 官方标准做法,在components里加一个UserIdentity.php文件,class UserIdentity extends
CUserIdentity 继承CUserIdentity,然后在UserIdentity类里面写验证的业务过程(比如你在哪张表去查数据,取数据之类) 2、开始登录 new 一个UserIdentity,传入参数,然后执行验证方法 例: $this->_identity=new
UserIdentity($this->username,$this->password); 3、调用Yii::app()->user->login()保存数据(session) 调用YII组件设置session Yii::app()->user->login($this->_identity,$duration);//$duration,session过期时间,此方法在/framework/web/auth/CWebUser.php
LINE 222 $this->_identity对象中getId(),getName()方法一般返回用户名,用户ID等, 官方的CUserIdentity类里,都是返回用户名($this->username)//此方法在/framework/web/auth/CUserIdentity
LINE 78 如果需要UID的话,可以在UserIdentity重写getId()方法,这样你在使用yii::app()->user->getId()的时候,调用的就是UID而不是username了。 这样就可以通过yii::app()->user->getId(),yii::app()->user->getName()访问SESSION里的用户数据, 如果还需要放其他数据,在CUserIdentity类里重写getPersistentStates()方法,然后把你要保存的数据以数据形式return
出来。 这里你就可以通过yii::app()->user->getState(‘key‘);这种形式调用,这里的key是getPersistentStates()方法return出来的数组key。 此文说明一个yii用户验证的思路,不建议复制文中任何一句代码。可以在阅读理解后,自己操作。有基础功力可以看看/framework/web/auth/CWebUser.php源码 yii 用户登录验证(cwebuser) yii 用户登录 (记),搜素材,soscw.com yii 用户登录验证(cwebuser) yii 用户登录 (记) 标签:cWeb class ext get 文件 com 原文地址:http://www.cnblogs.com/naci/p/3705916.html
$this->_identity->authenticate();
文章标题:yii 用户登录验证(cwebuser) yii 用户登录 (记)
文章链接:http://soscw.com/index.php/essay/22676.html