我一直没懂UserIdentity里写private $_id的意图?
到底有啥作用,这个类里
<?php
class UserIdentity extends CUserIdentity {
//private $_id;
public function authenticate() {
$params = array(
'equal' => array(
'name' => $this->username,
)
);
$user = APSUtils::exec('','/get/user/@all',json_encode($params));
if($user === null) {
$this->errorCode = self::ERROR_USERNAME_INVALID;
} elseif (APSUtils::exec('', '/get/user/@verify/'.$user[0]['rowKey'], '{"passwd":"'.$this->password.'"}') === null) {
$this->errorCode = self::ERROR_PASSWORD_INVALID;
} else {
$this->errorCode = self::ERROR_NONE;
//$this->_id = $user[0]['rowKey'];
}
return $this->errorCode;
}
// public function getId() {
// return $this->_id;
// }
}
这个是登录的model里面的方法
public function login() {
if (!$this->_identity->errorCode) {
Yii::app()->user->login($this->_identity);
return true;
}
return false;
}
在上面这段代码里,开启注释掉的代码和没开启之前 没任何影响。。。
还有一个问题就是Yii::app()->user->id 是怎么赋值的,我现在打印$user 里面就没id的东西,现在id全部用rowKey代替了,一串字符串。
为什么登录之后打印Yii::app()->user->id会出来一个2呢