我有一个要在CakePHP视图中显示的数组,其中包含导航数据。每个数组项都包含id,name,level等字段以及另一个名为children的数组字段,其中重复此结构。
在Cake PHP View中,使用foreach循环和html-Helper输出相关数据很容易在第一层上遍历数组。但是我如何输出儿童用品(如果有的话,还有他们的孩子)?通常我会做一个递归函数调用,但是在视图中你不应该使用函数看看,不是吗?控制器中的Bunt我不能使用html助手,所以我被困在这里。
答案 0 :(得分:1)
我认为作为一个干净的解决方案,让一个帮助器遍历数组,递归地查找每个元素,如果其中一个元素是另一个数组(http://book.cakephp.org/#!/view/1097/Creating-助手)
或者,如果您知道您的项目可能只有一个孩子,那么您可以询问实际项目是否是一个操作它的阵列。但我更喜欢第一种解决方案。
答案 1 :(得分:0)
看起来您可能会尝试树行为
答案 2 :(得分:0)
你需要像递归方法那样可以称之为自我的东西,如下所示。 https://github.com/infinitas/infinitas/blob/beta/core/menus/views/helpers/menu.php#L163