我在使用Doctrine2时遇到PHP(10s)执行时间长的问题,并且想知道可以应用什么解决方案。
我正在加载一个与功能有1:n关系的actor实体。我正在加载50个演员,每个演员有20个特征,导致1000行。问题似乎是Doctrine Hydration。如果我使用对象或阵列水合作用,它不会产生很大的不同。在分析器中,我可以看到主要的影响是方法gatherRowData / hydrateRowData,它们都被称为13.141次。
使用普通的旧Mysql结果集并循环遍历该数组的唯一解决方案是什么?如果是的话,我想知道它使用ORM的意义。希望有人可以对此有所了解。通常我想拥有可以通过getIdentity()等方法访问的对象,或者可以拥有一些业务逻辑的对象,例如用于获得相关实体。
最诚挚的问候 基督徒