[SPIP Zone] Tableaux : additioner valeurs pour clés identiques

Salut !

Soit deux tableaux de clés identiques remplis dynamiquement mais retournant des valeurs différentes, comment faire en sorte d'additionner les valeurs des 2 tableaux dans un nouveau tableau comportant les clés initiales et les valeurs calculées ?

T.

Le 27.04.17 à 12:32, drozerah@free.fr a écrit :

Salut !

Soit deux tableaux de clés identiques remplis dynamiquement mais retournant des valeurs différentes, comment faire en sorte d'additionner les valeurs des 2 tableaux dans un nouveau tableau comportant les clés initiales et les valeurs calculées ?

T.

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

En php ou en SPIP?

--
Maïeul

Salut !

Soit deux tableaux de clés identiques remplis dynamiquement mais retournant des valeurs différentes, comment faire en sorte d'additionner les valeurs des 2 tableaux dans un nouveau tableau comportant les clés initiales et les valeurs calculées ?

T.

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

En php ou en SPIP?

En spip :slight_smile:

Le 27.04.17 à 12:41, drozerah@free.fr a écrit :

Salut !

Soit deux tableaux de clés identiques remplis dynamiquement mais retournant des valeurs différentes, comment faire en sorte d'additionner les valeurs des 2 tableaux dans un nouveau tableau comportant les clés initiales et les valeurs calculées ?

T.

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

En php ou en SPIP?

En spip :slight_smile:

Comme cela, rapidement et sans tests (en SPIP 3):
#SET{tab1,....}
#SET{tab2,....}
#SET{total,#ARRAY}
<BOUCLE_parcourir(DATA){source tableau, #GET{tab1}}>
#SET{total,#GET{total}|array_merge{#CLE,#VALEUR|plus{#GET{tab2/#CLE}|}}}
</BOUCLE_parcourir>

Le principe est de boucler sur un tableau et de remplir le tableau de total.

Par contre cela suppose que les deux tableaux aient exactemetn les mêmes clefs.

--
Maïeul

----- Mail original -----
De: "Maïeul" <maieul@maieul.net>
À: spip-zone@rezo.net
Envoyé: Jeudi 27 Avril 2017 12:49:59
Objet: Re: [SPIP Zone] Tableaux : additioner valeurs pour clés identiques

Le 27.04.17 à 12:41, drozerah@free.fr a écrit :

Salut !

Soit deux tableaux de clés identiques remplis dynamiquement mais retournant des valeurs différentes, comment faire en sorte d'additionner les valeurs des 2 tableaux dans un nouveau tableau comportant les clés initiales et les valeurs calculées ?

T.

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

En php ou en SPIP?

En spip :slight_smile:

Comme cela, rapidement et sans tests (en SPIP 3):
#SET{tab1,....}
#SET{tab2,....}
#SET{total,#ARRAY}
<BOUCLE_parcourir(DATA){source tableau, #GET{tab1}}>
#SET{total,#GET{total}|array_merge{#CLE,#VALEUR|plus{#GET{tab2/#CLE}|}}}
</BOUCLE_parcourir>

Le principe est de boucler sur un tableau et de remplir le tableau de total.

Par contre cela suppose que les deux tableaux aient exactemetn les mêmes
clefs.

Merci Maïeul, je vais teste ça :slight_smile:

Le 27 avr. 2017 à 12:58, drozerah@free.fr a écrit :

----- Mail original -----
De: "Maïeul" <maieul@maieul.net>
À: spip-zone@rezo.net
Envoyé: Jeudi 27 Avril 2017 12:49:59
Objet: Re: [SPIP Zone] Tableaux : additioner valeurs pour clés identiques

Le 27.04.17 à 12:41, drozerah@free.fr a écrit :

Salut !

Soit deux tableaux de clés identiques remplis dynamiquement mais retournant des valeurs différentes, comment faire en sorte d'additionner les valeurs des 2 tableaux dans un nouveau tableau comportant les clés initiales et les valeurs calculées ?

T.

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

En php ou en SPIP?

En spip :slight_smile:

Comme cela, rapidement et sans tests (en SPIP 3):
#SET{tab1,....}
#SET{tab2,....}
#SET{total,#ARRAY}
<BOUCLE_parcourir(DATA){source tableau, #GET{tab1}}>
#SET{total,#GET{total}|array_merge{#CLE,#VALEUR|plus{#GET{tab2/#CLE}|}}}
</BOUCLE_parcourir>

Le principe est de boucler sur un tableau et de remplir le tableau de total.

Par contre cela suppose que les deux tableaux aient exactemetn les mêmes
clefs.

Merci Maïeul, je vais teste ça :slight_smile:

J'ai mis un | en trop après

#GET{tab2/#CLE}