as $entity))?
https://pastebin.com/V63wUcrH
По-моему выглядит плохо. Но держать связанные с сущностью другие сущности в свойстве $entities класса Entity тоже ерунда? /** @var EntityInterface[] */ $this->entites; foreach ($this->entites as $entity)
а как часто тебе нужно извлекать данные из вложеннных сущностей неизвестной глубины вложенности? как часто тебе нужны именно все данные всех вложенных сущностей?
Сущность foo обязательная - извлекать постоянно. bar и baz может не быть
ну просто этот код выглядит как буд-то ты пытаешься сделать некий абстрактный механизм сериализации для EntityInterface Тебе действительно нужен прямо такой абстрактный механизм?
Знаю, что обычно для этого используется гидратор. Пока обхожусь таким минимумом. Извлекать через toArray нужно, чтобы передать сущность как массив простому crud, который используется на проекте (он принимает массив), и сохранить в бд. ORM нет на проекте
Механизм конкретный. Не абстрактный. Абстрактный как раз не нужен. Если нужен будет абстрактный, то использую гидратор какой-нибудь) Я правильно понял, что в моем случае (конкретный механизм) лучше так сделать? https://pastebin.com/ZDMSWRWq
так почему не сделать так? return [ 'a' => $this->a, 'b' => $this->b ? $this->b->toArray() : null, // or [] ];
зачем мерджить каждый раз? =) ну типа хуже не станет, но тем не менее
Обсуждают сегодня