为了账号安全,请及时绑定邮箱和手机立即绑定

如果所有数组的逻辑相同,如何避免重复 foreach?

如果所有数组的逻辑相同,如何避免重复 foreach?

PHP
慕娘9325324 2022-06-17 16:10:54
这个问题是关于如何在 PHP 中生成更好的代码。我有多个数组(准确地说是 5 个)。我必须对所有这些应用相同的逻辑。如何避免为所有这些重复代码?$cpus = getCPUs(); // Get array 1 dimension with key$rams = getRAMs(); // Get array 1 dimension with key我的意思是,里面的代码,我只需要创建一个函数。没关系。但是我仍然必须为每个数组声明一个 foreach 循环......有没有办法避免这种情况?就像从变量中获取我的 foreach 循环参数一样。foreach ($cpus as $key_cpu => &$cpu) {    // FUNCTION XXX}foreach ($rams as $key_ram => &$ram) {    // FUNCTION XXX}
查看完整描述

2 回答

?
九州编程

TA贡献1785条经验 获得超4个赞

您可以简单地使用两个foreachs:


foreach ([&$cpus, &$rams] as &$components) {

  foreach ($components as $key => &$component) {

     // FUNCTION XXX

  }

}

请注意,所有这些引用都需要能够分配另一个值$component并让它也修改原始值(如建议的问题)。理想情况下,如果可以的话,您会希望避免这样做。如果这些组件是数组,请改为使用对象进行探索。


查看完整回答
反对 回复 2022-06-17
?
浮云间

TA贡献1829条经验 获得超4个赞

为循环所有数组编写通用函数/方法并返回任何你想要的......


function loop_array($array){


    $return_data=array()

    foreach ($array as $key => &$data) {


            // FUNCTION XXX

    }


    return $return_data;

}


查看完整回答
反对 回复 2022-06-17
  • 2 回答
  • 0 关注
  • 107 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号