嗨,staskoverflow社区。
如何改进PHP 5代码的下一个结构。型号列表$months(超过12个)$month->天(超过31天)
$day->客户端客户端列表$day->someActions$client 的操作列表
我需要为每个$client调用每个$action。所以我的结构是:
<?php
foreach($monthes as $month) {
foreach($month->days as $day) {
foreach($day->clients as $client) {
foreach($day->actions as $action) {
$action->run($client);
}
}
}
} ?>
所以有四个foreach循环,我可以改进这个代码吗?
为什么要移出嵌套循环?你的代码非常清晰易懂,如果你的目标是优化这种方法的性能,那么我会采用的方法是:
- 我将首先尝试减少迭代次数。你可以通过问自己一些问题来做到这一点,比如我实际上想在旅途中显示多少个月的数据
- 可以询问有关天数和客户的类似问题
-
你有休息的情况吗?我的意思是
$result=$action->run($client);if("break_condition"==$result){打破}
这应该大大减少迭代次数。