迭代多级 ArrayObject() 以打印屏幕上的分层视图
我有一个输出非常复杂的 ArrayObject 结构,它可以/并且由多个级别的关系组成,例如 Parent -> 。儿童->儿童-> 当使用 foreach、for 或 while 循环时,像
这样的结构使用起来非常复杂。我研究过 SPL 迭代器,我认为可以使用它。我对整个概念有点不熟悉,因此任何有关循环多个级别的建议都会很受欢迎。
谢谢
I have a ArrayObject structure that is quite complex to output, it can/and consists of multiple levels of relationship e.g. Parent -> Child -> Children -> Child etc.
Structures like this are quite complex to work with when using a foreach, for or while loop. I've looked into SPL Iterators and I think this can be used. I'm a bit unfamiliar with the whole concept so any advice on looping over multiple levels would be well received.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
根据我的经验,你应该只使用递归函数调用。
我的意思是,您可以简单地创建一个函数来执行您需要的任何操作,但在函数末尾有一个 while 循环,该循环遍历子级并在每个子级上再次调用该函数。这样,您就可以在原始对象的每个子对象上触发该函数。
In my experience you should just use a recursive function call.
By that I mean you simple make a function that does whatever you need, but have a while loop at the end of the function that loops through the children and calls the function again on each child. This way you fire the function on every child of the original object.