73 votes

Compter le nombre d'itérations dans une boucle foreach

Comment calculer le nombre d'éléments dans un foreach ?

Je veux compter le nombre total de rangs.

foreach ($Contents as $item) {
    $item[number];// if there are 15 $item[number] in this foreach, I want get the value : 15
}

0 votes

Est-ce que chaque article a un numéro ?

0 votes

foreach est une construction php, et n'a pas d'éléments - les tableaux en ont. L'utilisation de compter ($array) renvoie le nombre d'éléments qu'il contient.

141voto

aioobe Points 158466

Si vous voulez simplement connaître le nombre d'éléments d'un tableau, utilisez count . Maintenant, pour répondre à votre question...

Comment calculer le nombre d'éléments dans un foreach ?

$i = 0;
foreach ($Contents as $item) {
    $item[number];// if there are 15 $item[number] in this foreach, I want get the value : 15
    $i++;
}

Si vous n'avez besoin que de l'index à l'intérieur de la boucle, vous pouvez utiliser

foreach($Contents as $index=>$item) {
    // $index goes from 0 up to count($Contents) - 1
    // $item iterates over the elements
}

0 votes

Je viens de le faire. $index+1 pour le numéro de ligne, exactement ce dont j'ai besoin, merci !

50voto

tjm Points 3462

Vous n'avez pas besoin de le faire dans le foreach .

Il suffit d'utiliser count($Contents) .

21voto

Fase Points 490
count($Contents);

ou

sizeof($Contents);

2 votes

N'utilisez pas sizeof il s'agit juste d'un alias du vrai nom qui peut prêter à confusion : php.net/manual/fr/function.sizeof.php

20voto

Alejandro Moreno Points 319
foreach ($Contents as $index=>$item) {
  $item[$index];// if there are 15 $item[number] in this foreach, I want get the value : 15
}

5voto

JimP Points 551

Il y a plusieurs façons d'aborder cette question.

Vous pouvez définir un compteur avant le foreach() et ensuite simplement itérer, ce qui est l'approche la plus simple.

$counter = 0;
foreach ($Contents as $item) {
      $counter++;
       $item[number];// if there are 15 $item[number] in this foreach, I want get the value : 15
}

0 votes

Var en PHP est erronée. (ce n'est pas une question sur le JavaScript)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X