Heim  >  Artikel  >  php教程  >  Yii框架Yiiapp()的理解

Yii框架Yiiapp()的理解

WBOY
WBOYOriginal
2016-06-13 09:07:231117Durchsuche

Yii框架Yiiapp()的理解

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的一些属性和方法就可以被使用。

您可能感兴趣的文章

  • 显示行号的文本框效果,兼容ie、火狐等浏览器
  • yii框架目录结构详细分析说明
  • php打造属于自己的MVC框架简单案例,提供思路,仅供参考
  • 提高用户体验必须从分析用户视觉感官上入手
  • select into from 提示 Undeclared variable.....错误的解决办法
  • Yii控制器动作参数绑定处理
  • php设计模式是什么,该如何理解
  • php Output Control 深入理解 ob_flush 和 flush 的区别
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn