Php Symfony和Twig:it';传递整个实体还是将单个属性传递到专用数组中更好?
Symfony可以将整个实体传递给细枝模板,并且可以从细枝模板调用实体的get方法Php Symfony和Twig:it';传递整个实体还是将单个属性传递到专用数组中更好?,php,symfony,twig,Php,Symfony,Twig,Symfony可以将整个实体传递给细枝模板,并且可以从细枝模板调用实体的get方法 从细枝模板内部调用get方法是一种很好的做法,也有一些缺点,例如在性能或消耗的资源方面?直接访问实体是可以的,但在某些性能或内存密集型场景中除外(内存受限环境中的巨大结果集…),在这种情况下,您可能不得不退回到传递静态数据 还请注意,您不必显式调用细枝文件中的实体的方法,因为它的行为类似于对应的关联数组细枝(细枝足够聪明,可以根据需要为实体水合并调用getter): 因此,这是同一件事:从控制器调用get方法与从
从细枝模板内部调用get方法是一种很好的做法,也有一些缺点,例如在性能或消耗的资源方面?直接访问实体是可以的,但在某些性能或内存密集型场景中除外(内存受限环境中的巨大结果集…),在这种情况下,您可能不得不退回到传递静态数据 还请注意,您不必显式调用细枝文件中的实体的方法,因为它的行为类似于对应的关联数组细枝(细枝足够聪明,可以根据需要为实体水合并调用getter):
因此,这是同一件事:从控制器调用get方法与从twig模板调用它是同一件事?twig技巧允许您不从控制器访问实体,因此您要编写的代码更少(如果您在某个时候需要,相同的twig模板也与实体的数组等价物完全兼容)。这是不完全相同的,因为如果在属性getter中发生错误,那么生成的堆栈跟踪将不同,因为在执行该细枝模板的php表示时,getter的执行要晚得多。此外,作为推论,访问实体上的属性通常会触发orm的水合作用(实际使用db数据填充),这可能会占用大量内存,并导致php内存不足错误,当您从一根细枝上看到它发生时,这总是一件痛苦的事情。
Display some entity property through its getter method : {{ entity.property }}
Display some array index value : {{ array.index }}