Effectuer PHP boucles jusqu'à la fin du tableau OU atteint certain nombre d'itérations?

Je souhaite recevoir un tableau en entrée, les valeurs de filtre, et de sortie comme un autre tableau. La fonction doit en boucle jusqu'à x itérations.

Par exemple, si je voulais sortie tous les valeurs à partir de l'entrée, je voudrais utiliser:

<?php
$i=0;
foreach ($array as $data) {
    if ($data['type'] != 'some_value') {
        $formatted_array[$i] = $data;
        $i++;
    }
}
return $formatted_array;    

Mais si $array eu un gros indice, le $formatted_array serait plus grande que j'ai besoin. J'ai essayé d'utiliser un for boucle avec plusieurs conditions, mais il semble coincé dans une boucle infinie.

Je ne suis pas développeur de métier, donc la logique est difficile à comprendre. Je ne suis pas d'avoir des erreurs, il est donc difficile de comprendre exactement où je vais mal.

Comment puis-je effectuer PHP boucles jusqu'à la fin du tableau ou jusqu'à ce que la fonction atteint un certain nombre d'itérations?

Ne serait pas array_filter résoudre ce très agréable? php.net/manual/en/function.array-filter.php

OriginalL'auteur Joe W | 2011-09-01