Php 小枝:钥匙;0“;不存在,因为数组为空,但转储显示数组
我在Twig尝试显示数组时遇到问题 当我转储变量Php 小枝:钥匙;0“;不存在,因为数组为空,但转储显示数组,php,arrays,symfony,twig,Php,Arrays,Symfony,Twig,我在Twig尝试显示数组时遇到问题 当我转储变量{{dump(perfilServidor)}}时,我得到: array:3 [▼ 0 => UypPerfilServidor {#6122 ▼ -id: 1 -idPerfil: 8 -uypPerfil: UypPerfil {#363 ▶} -uypServidor: UypServidor {#6118 ▶} } 1 => UypPerfilServidor {#6117 ▼
{{dump(perfilServidor)}}
时,我得到:
array:3 [▼
0 => UypPerfilServidor {#6122 ▼
-id: 1
-idPerfil: 8
-uypPerfil: UypPerfil {#363 ▶}
-uypServidor: UypServidor {#6118 ▶}
}
1 => UypPerfilServidor {#6117 ▼
-id: 2
-idPerfil: 8
-uypPerfil: UypPerfil {#363}
-uypServidor: UypServidor {#6116 ▶}
}
2 => UypPerfilServidor {#6114 ▼
-id: 3
-idPerfil: 8
-uypPerfil: UypPerfil {#363}
-uypServidor: UypServidor {#6115 ▶}
}
]
但是,当我尝试转储数组{{dump(perfilServidor[0])}}
的一个键时,它会抛出一个异常:
键“0”不存在,因为数组为空
如果我尝试访问另一个键,{{dump(perfilServidor[5])}
,它表示数组具有键0,1,2:
具有键“0、1、2”的数组的键“5”不存在
我想获得数组的一个特定值(不通过整个数组循环),如何在不通过数组循环的情况下获得数组的值?即使我对您正在构建的应用程序一无所知,我可以告诉您,使用硬编码数组键是一种不好的做法,尤其是在模板内部
如果只需要一项,则不应将整个数组提供给模板。请记住,模板只是视图而不是程序逻辑。即使我对您正在构建的应用程序一无所知,我也可以告诉您,使用硬编码数组键是一种不好的做法,尤其是在模板内部
如果只需要一项,则不应将整个数组提供给模板。请记住,模板只是视图而不是程序逻辑。谢谢。这不是我期望的答案,但它从另一方面帮助我解决了问题。尽管我还是很好奇,为什么Twig会抛出这个异常?不确定。底层数组是php数组还是类似doctrines arrayCollection的对象?它是延迟加载的吗?该数组来自使用.getValues方法转换DoctrineCollection。听起来像是延迟加载问题。问问自己是否需要延迟加载。通常,您可能希望从数据库表包含的所有记录中呈现某些内容。在这种情况下,最好在一次查询中查询所有信息。很好的博客帖子:谢谢。这不是我期望的答案,但它从另一方面帮助我解决了问题。尽管我还是很好奇,为什么Twig会抛出这个异常?不确定。底层数组是php数组还是类似doctrines arrayCollection的对象?它是延迟加载的吗?该数组来自使用.getValues方法转换DoctrineCollection。听起来像是延迟加载问题。问问自己是否需要延迟加载。通常,您可能希望从数据库表包含的所有记录中呈现某些内容。在这种情况下,最好在一次查询中查询所有信息。不错的博客帖子: