Yii::app()疑惑

转载 2013年12月06日 11:26:00

http://www.yiiframework.com/forum/index.php/topic/5370-yiiapp%E7%96%91%E6%83%91/




在Yii的实例中,像$this->redirect(Yii::app()->user->returnUrl)中的Yii::app()->user->returnUrl的user调用的是哪个文件的属性或方法。

个人认为,像Yii::app()是返回当前应用的实例,可以调用实例中任何的ControllerID,actionID,配置文件 main.php等,
但我找了很久都没发现是在那里。
在SiteController.php文件中还有很多像这样的语句:

$this->redirect(Yii::app()->homeUrl);
Yii::app()->user->setFlash('contact','Thank you for contacting us. We will respond to you as soon as possible.');

不知道该怎么理解这个Yii::app(),

等待强强的回答 


Yii::app()返回的是你在index.php里创建的CWebApplication实例。在一次请求处理过程中,这是个唯一的实例。


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

其它的如returnUrl, homeUrl之类的也都是这种通过getter函数定义的部件属性。

另外,你在index.php使用的配置文件,其实质就是对Yii::app()进行属性的初始化。配置文件里提供的就是属性名和属性值的一个列表。任何CWebApplication的公共成员或通过setter定义的属性都可以配置。注意有的属性配置可能比较复杂,例如'components'属性。这时可以参见对应的API信息寻求帮助(例如'components'对应的API就是setComponents())

相关文章推荐

yii-advanced-app-2.0.11.tgz

  • 2017-03-16 14:32
  • 7.12MB
  • 下载

yii-advanced-app-2.0.11.tgz

  • 2017-02-21 21:26
  • 7.12MB
  • 下载

27.Yii App应用

Yii App应用 WebApp应用

yii-advanced-app-2.0.10.tgz

  • 2016-12-06 09:59
  • 7.06MB
  • 下载

yii-basic-app-2.0.7

  • 2016-04-02 15:41
  • 96KB
  • 下载

Yii2框架提供App接口,post请求入口文件

通常Yii2用来写web应用,非常轻松,无论从思想上,和易用性上,都是非常理想的选择。      但于在写web框架时,不需要考虑将controller和action作为参数来提交,而是直接写在UR...

yii-advanced-app-2.0.2框架下载

  • 2016-06-20 15:09
  • 4.51MB
  • 下载

yii-advanced-app-2.0.4

  • 2015-05-19 09:46
  • 4.05MB
  • 下载

\Yii::$app 属性整理

yii明显是一个配置驱动的应用,也可以说是数据驱动,通过配置文件来个性化定义,其中有些常用属性最好稍微记忆一下,方便将来使用的时候可以想到并有效利用。 譬如对于一些常用的长namespace、全局变...

yii-basic-app-2.0.7.tgz

  • 2016-03-02 15:39
  • 4.73MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)