繁体   English   中英

如何从具有多个 PHP 循环的数组中检索特定值?

[英]How to retrieve specific values from array with multiple PHP for loops?

我一直在尝试从 PHP for 循环中检索特定结果,但没有成功。

我的目标是在数组上运行一个循环,如果它存在于数组中,则每次都提取特定值。 我能够运行第一个循环并检索一个值,但是,当我为 function 运行第二个循环时,它检索到完全相同的数字。 我一直无法弄清楚为什么。 例如,第一个循环返回值 6,但第二个循环也是如此。 如果它存在于第一个循环中,我正在尝试检索 6,如果它存在于第二个循环中,则检索 7。 7 位于数组中,因此它应该在第一个 for 语句中返回 6,在第二个语句中返回 7。

这是我到目前为止所做的:

for ($i = 0; $i < count($final_data); $i++) {
    $check_sector = $final_data[$i]['sector'];
    $check_image = $final_data[$i]['image'];
      if($final_data[$i]['sector'] == 6){
        echo "<div id='6' class='w3-button w3-ripple grid-item-sector' onclick='getSector(this.id)'>"
        . "<div id='ss6' style='position: absolute; width: 100px; height: 100px; background-image: url(" . $check_image . ");'></div>"
                ."<div id='s6' class='overlay' ></div></div>";
        break;
      }else{
        echo "<div id='6' class='w3-button w3-ripple grid-item-sector' onclick='getSector(this.id)'>"
        ."<div id='s6' class='overlay' ></div></div>";
        break;
      }
  }

  for ($i = 0; $i < count($final_data); $i++) {
    $check_sector = $final_data[$i]['sector'];
    $check_image = $final_data[$i]['image'];
      if($final_data[$i]['sector'] == 7){
        echo "<div id='7' class='w3-button w3-ripple grid-item-sector' onclick='getSector(this.id)'>"
        . "<div id='ss7' style='position: absolute; width: 100px; height: 100px; background-image: url(" . $check_image . ");'></div>"
                ."<div id='s7' class='overlay' ></div></div>";
        break;
      }else{
        echo "<div id='7' class='w3-button w3-ripple grid-item-sector' onclick='getSector(this.id)'>"
        ."<div id='s7' class='overlay' ></div></div>";
          break;
      }
  }

当您到达第二个 foreach 循环时,它首先命中数组中的第一个元素。

所以说是6==7? 不,所以它转到 else echo 语句。

然后你有一个休息,所以它放弃并且永远不会检查数组中的第二个元素,即 7。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM