Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php zend framework中存储的实例化对象在哪里?_Php_Zend Framework - Fatal编程技术网

Php zend framework中存储的实例化对象在哪里?

Php zend framework中存储的实例化对象在哪里?,php,zend-framework,Php,Zend Framework,我是Zend框架的初学者,我发现很难理解他们的文档。 我使用的唯一PHP框架是CodeIgniter 我在利用图书馆时习惯了这种方法: //load the My_Library class and assign the object to $this->myLibrary property $this->load->library('my_Library'); //CodeIgniter way public function index() { $this->

我是Zend框架的初学者,我发现很难理解他们的文档。 我使用的唯一PHP框架是CodeIgniter

我在利用图书馆时习惯了这种方法:

//load the My_Library class and assign the object to $this->myLibrary property
$this->load->library('my_Library');  //CodeIgniter way

public function index()
{
   $this->my_Library->method();  //make use of the methods in the loaded library
}
到目前为止,我正在了解这段代码在zend中是如何工作的,比如在bootstrap类中:

protected  function _initSetDoctype()
{
        $doctypeHelper = new Zend_View_Helper_Doctype();
        $doctypeHelper->doctype('XHTML1_STRICT');  
}
在layout.phtml文件中,我们可以放置:

<?php echo $this->doctype() ?>

我的问题是:因为我实例化了一个新的
Zend_View_Helper_Doctype()
采埃孚如何分配
$this->doctype
并使其在视图中可用? 是否存在某种类型的存储,这些值在其中更新视图对象

我试图了解zend中的流是如何工作的,以便更好地了解如何利用它的资源。对不起,我的英语很难理解
多谢各位

通常ZF使用Zend_注册表来存储它创建的对象的实例。您提供的特定示例(即_initSetDoctype)有效,因为
Zend\u View\u Helper\u Doctype
的构造函数将检查它是否已存储在Zend\u注册表中。因此,在引导过程中,
new Zend\u View\u Helper\u Doctype()
将Doctype信息存储在注册表中(因为它是第一次创建的),而不是在layout.phtml中,将检索注册表中存储的值

其他ZF资源(或对象),如Zend_视图、Zend_布局,也通过注册表进行存储和访问


当然,您也可以将自己的对象(或任何对象)存储在注册表中。这样,您将能够在ZF应用程序的每个位置访问它们

您可以自己回答这个问题,只需启动调试器!投票结束并不是一个真正的问题。一旦你了解了框架,文档就没那么糟糕了,哈哈!开玩笑的是,他们在将ZF作为独立对象和MVC模式分离时做得很差。有些示例完全缺乏如何在MVC中正确实现类的信息,而其他示例仅在MVC模式中工作。我明白了!我已经仔细研究这个框架好几个小时了。与CodeIgniter相比,它真的不同。非常感谢你!