执行PHP循环,直到数组OR到达一定数量的迭代?

前端之家收集整理的这篇文章主要介绍了执行PHP循环,直到数组OR到达一定数量的迭代?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我希望收到一个数组作为输入,从它的过滤值,并作为另一个数组输出.该函数应循环遍历x次迭代.

例如,如果我想从输入输出所有的值,我会使用:

  1. <?PHP
  2. $i=0;
  3. foreach ($array as $data) {
  4. if ($data['type'] != 'some_value') {
  5. $formatted_array[$i] = $data;
  6. $i++;
  7. }
  8. }
  9. return $formatted_array;

但是如果$array有一个大的索引,那么$formatted_array会比我需要的要大.我尝试使用一个具有多个条件的for循环,但它似乎陷入无限循环.

我不是贸易开发商,所以逻辑很难理解.我没有得到错误,所以很难理解我错在哪里.

如何在数组结束之前执行PHP循环,直到函数达到一定次数的迭代?

你在正确的轨道 – 你可以退出foreach循环,当你达到你的计数.您使用foreach遍历整个数组,如果您没有达到规定的最大数量,则将处理整个数组.但是如果你达到最大值,跳出循环.
  1. $i = 0;
  2. // Don't allow more than 5 if the array is bigger than 5
  3. $maxiterations = 5;
  4. foreach ($array as $data) {
  5. if ($i < $maxiterations) {
  6. if ($data['type'] != 'some_value') {
  7. $formatted_array[$i] = $data;
  8. $i++;
  9. }
  10. }
  11. else { // Jump out of the loop if we hit the maximum
  12. break;
  13. }
  14. }
  15. return $formatted_array;

猜你在找的PHP相关文章