Bonjour,
Préambule : navré si cette question est basique...elle reflète mon niveau
Contexte :
j'ai un tableau multidimensionnel, issu d'un merge_recursif, dont la clef principale est une date et qui comprend pour chacune un sous-tableau composé au maximum 2 clefs avec chacune une valeur.
Mais pour certaine date, il y a qu'une seule valeur
Je cherche comment ajouter les clefs manquantes
Voici un extrait du Tableau initial :
Voilà ce que j'aimerai en final Tableau attendu :[2014-11-24] => Array
(
[t2] => 284737
)
[2014-12-01] => Array
(
[t1] => 173737
[t2] => 278559
)
[2014-12-08] => Array
(
[t1] => 175502
[t2] => 286161
)
[2014-12-15] => Array
(
[t1] => 173753
)
[2014-12-22] => Array
(
[test] => 0
)
Voici le petit bout de code que j'ai bricolé mais il ne fonctionne pas bien :'( car il y une "double passe" dans les tableaux imbriqués[2014-11-24] => Array
(
[t1] => 0
[t2] => 284737
)
[2014-12-01] => Array
(
[t1] => 173737
[t2] => 278559
)
[2014-12-08] => Array
(
[t1] => 175502
[t2] => 286161
)
[2014-12-15] => Array
(
[t1]=> 173753
[t2] => 0
)
[2014-12-15] => Array
(
[t1] => 0
[t2] => 0
)
Je crains de me fourvoyer dans cette voie....
Merci pour vote aideforeach ($array_global as $date => $v1)
{
foreach ($v1 as $key => $v2)
{
if ($key == 't1') { $t1=$v2;}
if ($key == 't2') {$t2 = $v2;}
if (isset($t1) & isset($t2))
{
// rien a faire
}
if(isset($t1) & !isset($t2))
{
$array_t2 [$date] = array('t2' => 0);
}
if(isset($t2) & !isset($t1))
{
$array_t1 [$date] = array('t1' => 0);
}
if(!isset($volume) & !isset($clic))
{
$array_t1 [$date] = array('t1' => 0);
$array_t2 [$date] = array('t2' => 0);
}
}
unset($clic);
unset($volume);
}
$array_global = array_merge_recursive($array_global,$array_t1,$array_t2);
Partager