Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Sumar por grupos

Estas en el tema de Sumar por grupos en el foro de PHP en Foros del Web. Buenas, Tengo un problema y es que no sé cómo plantear lo siguiente, pese a haber usado el buscador de forosdelweb. Me explicaré con un ...
  #1 (permalink)  
Antiguo 04/05/2013, 03:55
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 13 años, 2 meses
Puntos: 89
Sumar por grupos

Buenas,

Tengo un problema y es que no sé cómo plantear lo siguiente, pese a haber usado el buscador de forosdelweb.

Me explicaré con un ejemplo:

Código PHP:
<?
$numeros 
= array ('3','5','7','9','20','30','41','54','89','98','101','121'); // El array se incrementaría con más elementos ya que lo recibo de un query.
$contar count ($numeros);
$suma 0;
for (
$i 0;$i $contar$i++)
{

$suma += $numeros[$i];
}
echo 
$suma;
?>
Con ese ejemplo conseguiría la suma de todos los números entre sí pero yo lo que quiero es que se sumen de cuatro en cuatro.

Por ejemplo:

3+5+7+9 y luego 20+30+41+54 y así sucesivamente con los registros futuros.

Supongo que para muchos de vosotros será algo sencillo pero no caigo en la manera de plantearlo.

¿Alguna idea?

Gracias a todos.
  #2 (permalink)  
Antiguo 04/05/2013, 05:12
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Respuesta: Sumar por grupos

Podrías dividir tu array en grupos de cuatro con array_chunk:

Código PHP:
Ver original
  1. $grupos = array_chunk($numeros, 4);

A partir de ahí obtendrías un array multidimensional:

Código:
array(3) {
  [0]=>
  array(4) {
    [0]=>
    string(1) "3"
    [1]=>
    string(1) "5"
    [2]=>
    string(1) "7"
    [3]=>
    string(1) "9"
  }
  [1]=>
  array(4) {
    [0]=>
    string(2) "20"
    [1]=>
    string(2) "30"
    [2]=>
    string(2) "41"
    [3]=>
    string(2) "54"
  }
  [2]=>
  array(4) {
    [0]=>
    string(2) "89"
    [1]=>
    string(2) "98"
    [2]=>
    string(3) "101"
    [3]=>
    string(3) "121"
  }
}

Y ese luego vas recorriendo y sumando como vienes haciendo.
  #3 (permalink)  
Antiguo 04/05/2013, 05:16
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 13 años, 2 meses
Puntos: 89
Respuesta: Sumar por grupos

Muchas gracias. Sabía que tenía que ser algo con array multidimensionales pero no conocía el array chunk.

Etiquetas: grupos, registro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:12.