Распечатать объект Doctrine_Collection? - PullRequest
2 голосов
/ 13 мая 2011

В настоящее время я использую 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 ]

3 голосов
/ 13 мая 2011

Избегайте печати Doctrine_Collection или Doctrine_Record, есть много свойств для внутреннего использования, которые не имеют значения для вас, и вы также можете увидеть отношения, которые могут привести к рекурсии, если связанная запись имеет обратную связь. Использование toArray() в коллекции или записи является наилучшей практикой.

1 голос
/ 04 февраля 2015

Вы можете использовать следующее для печати объекта в хорошем формате:

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