gpt4 book ai didi

php - 如何避免循环内循环

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:44:14 25 4
gpt4 key购买 nike

我有这个代码:

foreach($categories as $category) {
$items = getItems($category);

foreach($items as $item) {
// some code to manipulate $item
}
}

如您所见,内循环依赖于外循环。问题是如果数据太大,这需要相当长的时间。有什么方法、算法或技术可以避免依赖于外循环的内循环吗?

附言。我使用的是 PHP 5.3,所以 yield 毫无疑问。也有人告诉我,递归在这里可能会有帮助,但我不知道该怎么做。

感谢帮助

最佳答案

避免嵌套循环的一种方法是先存储数据,然后再操作它

$items=array_map("getItems",$categories);
$items=array_reduce("array_merge",$items);
array_walk($items,"item_manipulation");

请注意,此代码并不比您的原始代码段更有效,它只是没有您要求的嵌套循环。

如果我们知道 getItems 做了什么,以及你对每个项目做了什么操作,那么(也许)更智能的优化是可能的

关于php - 如何避免循环内循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30132034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com