Php 第2条行为准则

Php 第2条行为准则,php,doctrine-orm,doctrine,Php,Doctrine Orm,Doctrine,我有一个问题,我使用条令已经4年了,但我不知道他在搜索对象时是否加载了实体的所有数据(包括关系),例如: $entity = $entityManager->find('Entity', $id); 在这种情况下,是否设置了所有关系属性 我有一个类有很多关系属性(没有featch=eager),它的原因是什么 或者条令知道,当您使用属性的get方法时,只搜索关系 如果您知道一个文档,为了澄清,请发布一个链接默认为延迟加载。收集数据仅在首次访问时从数据库中检索 如果希望直接加载数据,则需要

我有一个问题,我使用条令已经4年了,但我不知道他在搜索对象时是否加载了实体的所有数据(包括关系),例如:

$entity = $entityManager->find('Entity', $id);
在这种情况下,是否设置了所有关系属性

我有一个类有很多关系属性(没有featch=eager),它的原因是什么

或者条令知道,当您使用属性的get方法时,只搜索关系


如果您知道一个文档,为了澄清,请发布一个链接

默认为延迟加载。收集数据仅在首次访问时从数据库中检索

如果希望直接加载数据,则需要加入特定集合,并将其添加到select子句中。或者使用您提到的
EAGER
fetch模式

[…]将为您创建代理实例,而不是返回一个真实的Author实例和一组注释。仅当您第一次访问这些代理时,它们才会通过EntityManager并从数据库加载其状态

此外:

为延迟加载的部分遍历对象图将很容易触发大量SQL查询,如果使用频繁,则执行效果会很差。确保使用DQL获取并尽可能高效地连接对象图的所有部分