Cuente el número de iteraciones en un bucle foreach

2 minutos de lectura

avatar de usuario
yuli chika

¿Cómo calcular cuántos elementos hay en un foreach?

Quiero contar el total de filas.

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

  • ¿Todos los artículos tienen número?

    – Gumbo

    2 de junio de 2011 a las 21:24

  • para cada es una construcción php, y no tiene ningún elemento, las matrices sí. usando contar($array) devuelve el número de elementos que contiene.

    – JC Inácio

    2 jun 2011 a las 21:31


avatar de usuario
aiobe

Si solo desea averiguar la cantidad de elementos en una matriz, use count. Ahora para responder a tu pregunta…

¿Cómo calcular cuántos elementos hay en 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 solo necesita el índice dentro del ciclo, puede usar

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

  • Lo acabo de hacer $index+1 para el número de fila, exactamente lo que necesito, ¡gracias!

    – capitán

    16 de febrero a las 1:57


No es necesario que lo hagas en el foreach.

Solo usa count($Contents).

avatar de usuario
gpreslandia

count($Contents);

o

sizeof($Contents);

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

avatar de usuario
Esbelto

Hay algunas maneras diferentes de abordar este problema.

Puede establecer un contador antes de foreach() y luego simplemente iterar a través de cuál es el enfoque más fácil.

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

  • var en PHP es incorrecto. (esta no es una pregunta de JavaScript)

    –Jeffrey Kastner

    6 de septiembre de 2016 a las 13:18

avatar de usuario
jeen broekstra

Probar:

$counter = 0;
foreach ($Contents as $item) {
          something 
          your code  ...
      $counter++;      
}
$total_count=$counter-1;

  • var en PHP es incorrecto. (esta no es una pregunta de JavaScript)

    –Jeffrey Kastner

    6 de septiembre de 2016 a las 13:18

avatar de usuario
webbiedave

$Contents = array(
    array('number'=>1), 
    array('number'=>2), 
    array('number'=>4), 
    array('number'=>4), 
    array('number'=>4), 
    array('number'=>5)
);

$counts = array();

foreach ($Contents as $item) {
    if (!isset($counts[$item['number']])) {
        $counts[$item['number']] = 0;
    }
    $counts[$item['number']]++;
}

echo $counts[4]; // output 3

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad