Skip to Content
Domain-Driven Design in PHP
book

Domain-Driven Design in PHP

by Keyvan Akbary, Carlos Buenosvinos, Christian Soronellas
June 2017
Intermediate to advanced
394 pages
8h 52m
English
Packt Publishing
Content preview from Domain-Driven Design in PHP

Reference Other Entities by Identity

When two Entities don't form an Aggregate but are related, the best option to have Entities reference one another is by using Identities. Identities were already explained in the Chapter 4, Entities.

Consider a User and their Orders, and assume we haven't found any true invariant. User and Order wouldn't be part of the same Aggregate. If you need to know which User owns a specific Order, you can probably ask the Order what its UserId is. UserId is a Value Object that holds the User Identity. We get the whole User by using its Repository, the UserRepository. This code generally lives in the Application Service.

As a general explanation, each Aggregate has its own Repository. If you've fetched a specific ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

PHP Web Services

PHP Web Services

Lorna Jane Mitchell
PHP Microservices

PHP Microservices

Pablo Solar Vilariño, Carlos Pérez Sánchez

Publisher Resources

ISBN: 9781787284944