Foros del Web » Programando para Internet » PHP »

Array asociativo: sumar todos los valores con la misma clave

Estas en el tema de Array asociativo: sumar todos los valores con la misma clave en el foro de PHP en Foros del Web. He encontrado un tema similar en el foro pero nadie le daba respuesta. A ver si tengo más suerte. Tengo una serie de puntuaciones y ...
  #1 (permalink)  
Antiguo 16/10/2012, 03:52
liranan
Invitado
 
Mensajes: n/a
Puntos:
Array asociativo: sumar todos los valores con la misma clave

He encontrado un tema similar en el foro pero nadie le daba respuesta. A ver si tengo más suerte.

Tengo una serie de puntuaciones y jugadores que las han hecho; por ejemplo:

$puntuaciones (1440, 20, 4500, 100);
$jugadores (Liranan, Paco, Marta, Liranan);

Los paso a un array asociativo, principalmente para ordenarlos con otros propósitos que no tienen que ver con esta pregunta; el caso es que el resultado final es:

$jugadas (Marta=>4500, Liranan=>1440, Liranan=>100, Paco=>20);

Lo que quiero hacer es que se me sumen todos los valores que tengan la misma clave, es decir, que me de una suma de todas las puntuaciones del usuario. En el ejemplo quedaría así:

Marta = 4500
Liranan = 1540
Paco = 20

Imagino que con algún tipo de bucle foreach se podrá hacer, pero estoy espeso. Alguien me echa una manita?

Gracias.
Gonzalo
  #2 (permalink)  
Antiguo 16/10/2012, 05:49
 
Fecha de Ingreso: septiembre-2012
Ubicación: Argentina
Mensajes: 144
Antigüedad: 11 años, 7 meses
Puntos: 12
Respuesta: Array asociativo: sumar todos los valores con la misma clave

Buenos Dias!...

Lo que buscas hacer no es muy complicado solamente tiene que saber manejar bien los Array...
Te dejo el manual de php para que lo leas y veas un poco..

http://php.net/manual/es/ref.array.php

Una salida rapida al problemas podrias usar la funcion LIST()... aca te paso la pagina para que veas los ejemplos.

http://www.php.net/manual/es/function.list.php

Saludos!!
  #3 (permalink)  
Antiguo 16/10/2012, 06:01
liranan
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Array asociativo: sumar todos los valores con la misma clave

Muchas gracias, Pablo.

En realidad ya he conseguido solucionarlo, por si a alguien más le sucediera, aquí dejo la solución:

Código PHP:
$puntuaciones = (100250020400);    
$nicknames = (LirananGonzaloLirananMarta); 
Tengo dos arrays con valores y nombres


Código PHP:
$jugadas = array();
for(
$i=0;$i<count($nicknames);$i++){
    
$jugadas[$i] = array($nicknames[$i] => $puntuaciones[$i]);

Las convierto en un array asociativo, pero aquí estaba mi fallo, el array debe tener al menos tres niveles, del estilo:

array [0]
[clave]=>[valor]
[1]
[clave]=>[valor]
...

Código PHP:
$totales = array();    
foreach(
$jugadas as $jugada){
    foreach (
$jugada as $clave=>$valor) {
        
$totales[$clave]+=$valor;
    }

Recorre el array con dos bucles sumando a cada clave el valor correspondiente.
  #4 (permalink)  
Antiguo 16/10/2012, 06:03
 
Fecha de Ingreso: septiembre-2012
Ubicación: Argentina
Mensajes: 144
Antigüedad: 11 años, 7 meses
Puntos: 12
Respuesta: Array asociativo: sumar todos los valores con la misma clave

Ahhh bueno! me alegro mucho entoces.. y muy bien de dejar la solucion por si alguien mas la necesita!..

Saludos!! sigue asi!

Etiquetas: arrays, asociativo
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 01:40.