码迷,mamicode.com
首页 > 移动开发 > 详细

Yii框架Yiiapp()的理解

时间:2016-02-24 14:11:59      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:

Yii框架是一个纯面向对象的框架,这个框架在运行的时候,也就是一个应用被访问的时候,需要创建许多对象,这些对象再调用许多相关方法,从而完成一次web请求。

这个Yii::app() 是第一个被创建的对象,由这个对象调用相关方法,完后后续工作。

Yii::app()主要负责一些全局性的功能模块,比如Yii::app()->getUser()返回的是CWebUser实例(用于表达当前用户的验证信息)。因为CWebApplication继承CComponent,所以Yii::app()->getUser()也可以写作Yii::app()->user (参见关于CComponent的说明,这是Yii的基石)。

Yii::app()是类CWebApplication的实例,因此这个类(包括继承类)能被使用的属性和方法,这个对象都可以使用(有些方法是系统运行的核心方法,不建议直接调用)。例如 CWebApplication 里边有一个方法 getLayoutPath() 获得布局路径,则我们可以这样:

echo Yii::app()->getLayoutPath(); // 输出 D:\www\phpernote.com\protected\views\layouts

另外,CWebApplication 和其父类 CApplication 为系统定义了好多可以使用的组件,db、user、session、authManager、request 等等还有其他的不一一列举。

我们可以通过Yii::app()使用以上组件,例如:

echo Yii::app()->request->url; //可以获得当前请求的相对url地址( /index.php?r=user/login )

说明:

Yii::app()->request; 会创建request类对象

Yii::app()->request->url; 会调用类request里边的属性信息,这个属性没有,或调用父类的魔术方法__get间接调用geturl()方法

Yii::app()->user;  会调用用户验证组件(CWebUser),CWebUser的一些属性和方法就可以被使用。

Yii框架Yiiapp()的理解

标签:

原文地址:http://www.cnblogs.com/xieqian111/p/5212480.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!