yii2.0 user功能解析
来源:互联网 发布:刺客信条起源优化 编辑:程序博客网 时间:2024/06/06 17:31
yii2.0这个框架我想发表一下自己看法,那就是面向对象设计的精华(oop)。那大牛会说了,我说这些就是屁话。没错,大家都知道YII是一个非常好用的php开发框架,而且是遵循OOP的设计思想。但是很多人,只知道其然,尔不知所以然,人云亦云。今天,我给大家就讲解一下YII的登录,所用到的user组件。深入的了解,yii组件机制和登录的user原理。
1.yii组件思想,大家都了解,我就简单的讲解一下吧。
这是yii的配置目录,里面配置了yii的组件
组件详情
2.我们找的了user组件的位置,那我们就开发进入正题了。
这个user组件的具体文件目录在:/basic/models/user.php,(这个文件很强大哦!),他可以用于登录,退出,cookie验证,下面我们来看看这个类。
这个组件的原理:user--继承----》\yii\base\Object-----具体的实现在------》\yii\web\IdentityInterface
意思就是说:user可以使用\yii\base\Object里的方法和属性,具体的实现方式,是使用了\yii\web\IdentityInterface的方法(就是重写了这个类里的方法,接口调用。)
现在压力来了,这些东西是怎么使用的了。我研究了一天,真心说,我自己很疲惫。接下来,有到了我们的举例时间。(注:我使用的登录,就是yii安装的那个界面)
mvc:控制器(siteController),模型(loginform),视图(login)
这是控制器里的登录:首先判断用户是不是访问过的用户,如果是访问过的用户,就直接跳转登录了。(这里面肯定有cookie,我不多做解释cookie)
看到这个代码:YII::$app->user->isGuest ,哎呀!我的个神,这是什么。这是我第一次看这个代码的内心真实写照。没办法,我是个矫情的人。我必须弄明白,这是什么。
所以我就断点测试了一下。原来,是验证用户是否登录。
接下来,我看到$model=new Loginform():这个地方,大家肯定就知道了,如果用户没有登录(意思就是浏览器没有cookie),那我们进入登录流程。
上图中用到了request组件,大家是不是,有所体会组件的用处了。就是在配置文件中配置过,然后调用方式就是一个规律了。(好方便啊)进入正题,我们看登录是怎么回事。
大家发现了什么,我笑尔不语,自己去体会吧。login方法主要是判断用户是否存在,同时设置cookie有效时间,前面的伏笔,终于出现了。
这里面的代码就与user.php关联上了,小小的难度来了。admin是什么,我重写了user类。大家会觉得我很奇怪,但是我只想说YII是工具,用的感受,自己了解,就说这个USER组件,官方定义user数据表,靠,我必须用吗?大家觉得我很愤青,我只想说,我想怎么用,就怎么用。接下来我就给真相,原因是这样,user是组建,我按照组件的配置,从写了一个admin类,做为我自己的登录组件。
大家可以好好看看,以后我会时常更新文章。
- yii2.0 user功能解析
- Yii2.0数据筛选功能
- yii2-user的使用
- Yii2 User 登录原理
- yii2中的User类
- Yii2.0登录功能代码实现
- Yii2.0实现验证码功能
- yii2.0 验证码功能的实现
- Yii2.0实现语言包切换功能
- yii2 3: 创建user数据库
- yii2.0框架深入解析学习
- yii2-Ecommerce 功能列表
- yii2 debug 功能
- yii2 rules验证解析
- yii2.0使用插件实现一个简单的上传功能
- 如何修改yii2.0用户登录使用的user表为其它的表
- yii2-user 扩展插件的一些坑
- Yii2 User cookie 登录原理_TERRY
- 用jQuery和PHP来实现微信转盘抽奖程序 附源代码
- Linux dd命令中dsync与fdatasync的区别
- 前端面试题--网易邮箱
- Windows 进程的句柄表
- pdb文件
- yii2.0 user功能解析
- SpringMVC运行机制
- ios 判断一个nsstring 是否包含另一个 nsstring
- 百度云推送--分析与开发详解
- Advance Installer安装问题
- linux安装jdk1.7
- VISIO如何设置形状的颜色
- poj 2386 dfs
- DeepLearning tutorial(3)MLP多层感知机原理简介+代码详解