Bonjour,
J'ai un array qui se présente comme cela:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
0 :
 
      0 = 10
      1 = 20
      2 = 40
      3 = 30
 
1 :
 
      0 = 50
      1 = 30
      2 = 10
      3 = 20
Je souhaite modifier ce tableau pour ajouter la valeur contenue a l'indice n celle de n-1 (sauf pour la première case du tableau bien sur).
Ainsi mon tableau serait:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
0 :
 
      0 = 10
      1 = 30 // (10+20)
      2 = 70 // (40+30)
      3 = 100 // (70+30)
 
1 :
 
      0 = 50
      1 = 80 // (50+30)
      2 = 90 // (80+10)
      3 = 110 // (90+20)
J'ai codé cette fonction récursive:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
function modifier_tableau($tableau) {
	$i=0;
	foreach ($tableau as $cle=>$valeur) {
		if(is_array($valeur)) {
			modifier_tableau($valeur);
		} else {
			if($i!=0){
				$tableau[$i] = $tableau[$i]+$tableau[$i-1];
				echo $i.' => '.$tableau[$i].'<br />';
				$i+=1;
			} else {
				echo $i.' => '.$tableau[$i].'<br />';
				$i+=1;
			}
		}
	}
}
Cela m'affiche bien:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
0 => 10
1 => 30
2 => 70
3 => 100
0 => 50
1 => 80
2 => 90
3 => 110
Mais au final le tableau que j'ai passé en paramètre n'a pas été modifié (bien que je l'ai déclaré: global $array; )

Avez vous une idée de comment je dois m'y prendre SVP?

Merci d'avance,
Ganok.