Zend Framework 1 var_dump 对象内部对象

Zend Framework 1 var_dump object inside object

有人可以告诉我如何 var_dump() Zend_Application 对象吗?

object(Bootstrap)[3]
public 'frontController' => null
protected '_appNamespace' => boolean false
protected '_resourceLoader' => null
   protected '_application' => 
   object(Zend_Application)[1]
       protected '_autoloader' => 
       object(Zend_Loader_Autoloader)[2]
           protected '_autoloaders' => 
               array (size=0)
...

我可以 var_dump Bootstrap 对象 var_dump($this->bootstrap('view')); ,但我不知道如何 var_dump 嵌套的 Zend_Application 对象。

非常感谢。

如果您需要 var_dump() 测试代码,我建议您使用 phpUnit 的测试函数。这样更有优势。

首先,在 Zend Framework 1 中,您 can/should 使用:

Zend_Debug::dump($whatever);

而不是:

var_dump($whatever);

您可以转储应用程序,但它不会为您提供一切。您可以更改 index.php 添加:

Zend_Debug::dump($application);

之后:

$application->bootstrap()
            ->run();

这里最重要的是永远不要忘记 zf 是开源的,您可以深入查看代码,将 Zend_Debug::dump() 放到任何您喜欢的地方,这样您就可以做您想做的事。完成后只需将 zend 文件还原为原始文件即可。

最后一点:您可能甚至很可能不需要像那样转储 zend 应用程序。我不知道你的代码有什么问题,但怀疑它 "really" 是 zend 的问题。阅读应用程序对象,bootstrap 和 zend 的 mvc 一般应该对您有所帮助。

希望对您有所帮助!

Dorian M. 补充:您也可以扩展 Zend Object 以在您自己的函数中添加转储,不要弄乱原始代码