当涉及到提高性能时,减少单个SQL-Queries的数量就是其中的一部分。
现在让我们假设一个非常基本的例子:我有博客 -table和用户 -table。每个博客都通过给定的主键引用用户。
声明可能就像
SELECT blog.title, blog.text, user.name FROM blog, user INNER JOIN on blog.user_id = user.id
现在我的Blog- 对象我希望有一个$ user-property是User- 对象
我的问题:ZF2中是否有内置功能来处理这种情况?或者我是否需要手动将结果的每个字段映射到我的对象中?
提前致谢
答案 0 :(得分:4)
不,ZF2没有内置功能来执行此操作 - 如果需要,您应该考虑Doctrine 2或Propel。
但是,使用Zend\Db
,您可以在mapper类中编写此类SQL语句,然后使用ArraySerializable
水合器填充博客实体。然后,博客实体populate()
可以选择使用传递给它的用户数据创建用户对象。