2010-07-23 33 views
3

我想知道这是什么...添加Zend Framework:Application.ini resources.view [] =做什么?

resources.view[] = 

...初始化application.ini实际上呢?

我知道这让我通过

$this->bootstrap('view'); 
$view = $this->getResource('view'); 

访问从引导的观点,但我不知道如何ZF知道resources.view = Zend的看法?我想这样做,访问$viewgetResource('view')将创建使用zend视图插件初始化的视图?

如果我不添加行resources.view[] =我的应用程序仍然有zend视图对不对?那么为什么需要这一行,只是为了获得视图资源?

回答

4

该行触发查看资源的引导,请参阅:

http://framework.zend.com/manual/en/zend.application.available-resources.html#zend.application.available-resources.view

它使您可以通过设置选项的负载(文档类型,编码等)。 application.ini。

没有这条线,您仍然有一个视图是,因为viewRenderer会在第一次需要时按需创建一个View对象。

+0

我真的想知道,如果ZF是“硬编码”来识别,告诉它触发引导视图资源,因为如果我做'resource.myresource [] ='这样做什么都行不通? – 2010-07-28 03:21:44

+0

它会将ini文件中的内容映射到相应的资源类,因此view []将映射到Zend_Application_Resource_View。我会想象使用像myresource这样的不存在的东西将会出错,除非你自己创建一个相同的类。 – 2010-07-28 12:19:00

0

的:

resources.view[] = 
在ini文件

等于PHP的空数组:

array(
    'resources' => array(
     'view' => array() // pass empty array of the view options 
    ) 
) 
资源阵列

引导程序检查是否为空, 所以如果你传递一个空数组,您不会传递选项,但比较结果不为空, 会导致运行视图资源,但没有任何选项。

具有相同的效果,你可以这样做:

resources.view.enabled = 1 

但这发送选项enabled到视图的资源。