Maison  >  Article  >  php教程  >  Yii框架Yiiapp()的理解

Yii框架Yiiapp()的理解

WBOY
WBOYoriginal
2016-06-13 09:07:231158parcourir

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 的区别
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn