Hydration turns a database row into an entity object, filling its properties from the columns. It can be done by hand in a repository or with FETCH_CLASS. The application then handles typed objects rather than raw arrays.
Example
return new User(id: $row['id'], email: $row['email']);