打印Doctrine_Collection对象?

时间:2011-05-13 08:50:45

标签: php symfony1 doctrine

我目前正在为我的项目使用Symfony 1.2和Doctrine,我对Doctrine_collection对象有疑问。

假设我想在表格测试

中检索有关Id 1的元素的信息
$test = Doctrine::getTable('Test')->find(1);

很好用,我可以打印这个对象的不同属性,这里没问题

echo $test->name;

我也可以在数组中打印整个对象

print_r($test->toArray());

但是如果我尝试直接打印doctrine_collection对象

print_r($test)

我得到了一个巨大的数组,有很多奇怪的值,比如配置参数和东西。这是正常行为吗?

2 个答案:

答案 0 :(得分:3)

避免打印Doctrine_CollectionDoctrine_Record,有许多内部使用的属性对您无关紧要,您还可以看到关系,如果相关记录有反向,则会导致递归关系。在集合或记录上使用toArray()是最佳做法。

答案 1 :(得分:1)

您可以使用以下内容以漂亮的格式打印对象:

  echo "<pre>";
  \Doctrine\Common\Util\Debug::dump($doctrineObject);