| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 | <?phpnamespace Cas\Module;use Cas\Dao\UserInfo;use KIF\Verify;use KIF\Cookie;use KIF\Core\Request;/** * * CAS 用户模型 * * @author lihuanchun@qq.com */class User {	private $objDUserInfo;	public function __construct() {		$this->objDUserInfo = new UserInfo ();	}		/**	 * 页面中调用获取 当前用户信息的方法	 */	public function getRunTimeUserData() {		$JsonUserData = Cookie::get ( 'CAS_USER_DATA' );		$objDUser = new User ();		if (empty ( $JsonUserData )) {			$info = array ();			$uid = $objDUser->initUser ( $info );		} else {			$userData = json_decode ( $userData );			if ($userData ['key'] != Math::md5_16 ( $userData ['id'] )) {				return false;			}			$uid = $userData ['id'];		}		$userData = $objDUser->get ( $uid );		$userData ['key'] = Math::md5_16 ( $uid );		$userData = json_decode ( $userData );		Cooke::set ( 'CAS_USER_DATA', $userData, 60 * 60 * 24 * 20 ,'.'.$_SERVER['HTTP_HOST']);		return $userData;	}		/**	 * 通过$passport_uid 获取用户信息	 */	public function getUserDataPasspord($passport_uid){		$condition = array(				'passport_uid' => $passport_uid		);		$ids = $this->objDUserInfo -> findIdsBy($condition,1);				$userData = $this->objDUserInfo -> gets($ids);				$userData = array_pop($userData);				return $userData;			}		/**	 * 初始化一个新用户 返回ID	 */	public function initUser() {		$info = array (				'is_new' => UserInfo::NEW_USER ,				'passport_uid' => '-1',		);		return $this->objDUserInfo->add ( $info );	}		/**	 * 绑定一个新用户	 */	public function bindingUser($info, $uid) {		$info ['is_new'] = UserInfo::OLD_USER;		return $this->objDUserInfo->modify ( $info, array (				'id' => $uid 		) );	}		/**	 * 通过本平台的UID 获取用户信息	 */	public function get($uid) {		$result = array ();				if (! Verify::unsignedInt ( $uid )) {			return $result;		}				$result = $this->objDUserInfo->gets ( array (				$uid 		) );		if (! $result) {			return array ();		}				return array_pop ( $result );	}		/**	 * 通过本平台的UIDS 批量获取用户信息	 */	public function gets(array $uids) {		$result = array ();		if (! $uids) {			return $result;		}				$result = $this->objDUserInfo->gets ( $uids );		return $result;	}}
 |