От объекта к массиву в доктрине2

я использую Учение 2 ОРМ сопоставить мою таблицу SQL в объекты.
Есть ли способ поддержки, как asArray который конвертирует мои объекты в массив?

0

Решение

Вы можете просто использовать getArrayResult метод, который упоминается здесь внутри глава документации Doctrine 2 14.7.4.2. Массив гидратации:

$array = $query->getArrayResult();

Это короткая запись для, и делает точно так же, как, этот ответ что это @Joucks указывает на в его комментарий:

$array = $query->getResult(Query::HYDRATE_ARRAY);

Но вам не обязательно смотреть на конкретные решения Doctrine ORM для такой функциональности сериализации. Вы также можете посмотреть на решения, которые поставляются с PHP-фреймворком, который вы используете.

Zend Framework-

Например, если вы используете Zend-Framework, вы можете реализовать ArraySerializableInterface внутри объектов, которые вы хотите иметь возможность сериализовать в массив.

Этот интерфейс включает в себя getArrayCopy метод, который должен возвращать объект, сериализованный в массив.

Вы можете прочитать больше о ArraySerializable внутри Zend-Framework 2 Zend\Stdlib документация

Symfony

Symfony поставляется с этот компонент сериализатора.


Для других фреймворков я ожидаю, что они поставляются с аналогичными интерфейсами / решениями.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]