JeuWeb - Crée ton jeu par navigateur
[Résolu] Addition champs array multidimensionnel - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Résolu] Addition champs array multidimensionnel (/showthread.php?tid=2894)



[Résolu] Addition champs array multidimensionnel - Eluox - 15-08-2008

Coucou all Big Grin

Derrière ce titre un peu barbare, se cache un petit problème, peut-être tout simple a résoudre, mais j'avoue que j'ai pas trouvé Big Grin

J'ai un array de ce genre ( Résultat du print_r )

Code PHP :
<?php 
Array
(
[
0] => Array
(
[
name => Premier
[number] => 5
)

[
1] => Array
(
[
name => Deuxieme
[number] => 2
)

[
2] => Array
(
[
name => Dernier
[number] => 4
)

Mon problème est que je voudrais additionner les champs number, c'est a dire qu'a la fin je devrais avoir 11 dans l'exemple ci dessus.

et je vois pas trop comment Big Grin

Merci a ceux qui m'aideront Smile

Cordialement,


RE: Addition champs array multidimensionnel - Eluox - 15-08-2008

Arf, et pourquoi j'y ai pas pensé :/

J'passe pour un con pas doué maitenant Big Grin

Ty oxman,
j'me suis basé sur ta réponse même si dans mon cas c'était pas exactement sa Smile


RE: [Résolu] Addition champs array multidimensionnel - Sephi-Chan - 15-08-2008

Et comment faire pour additionner toutes les clés identiques automatiquement ? Je me souviens que je souhaitez faire ça pour déterminer les caractéristiques totales d'un personnage, il y a bien longtemps.


Sephi-Chan


RE: [Résolu] Addition champs array multidimensionnel - Sephi-Chan - 15-08-2008

Very nice ! C'est là un script très utile ! Je pense notamment à ceux qui font des jeux de rôle, mais pas seulement !


Sephi-Chan


RE: [Résolu] Addition champs array multidimensionnel - Raoull - 16-08-2008

et array_sum et ses petits amis ? ou au pire un seul for/each avec array_value, me semble que ca serait plus efficace que des for/each en cascade.


RE: [Résolu] Addition champs array multidimensionnel - Sephi-Chan - 16-08-2008

Moi non plus, je n'avais pas réussi avec array_sum(). Cela pour la simple raison qu'il fait la somme horizontale de la matrice, au lieu d'en faire la somme verticale, comme on cherche à le faire. Smile


Sephi-Chan


RE: [Résolu] Addition champs array multidimensionnel - Raoull - 16-08-2008

'ffectivement, au temps pour moi, c'est pas que je doutais de vos capacités mais je pensais que ct possible d'allier assez simplement array_sum avec une autre fonction array pour du multidimentionnel, mais... on dirait que non.
Reste donc à l'inventer :
Code :
function arraysomme($tab) {
    $som = 0;
    foreach($tab as $value) {
        if (is_array($value))
            $som += arraysomme($value);
        elseif (is_numeric($value))
            $som += $value;
    }
    return $som;
}