J'essaie d'étendre un tableau d'assoc comme celui-ci, mais PHP ne l'aime pas.
Je reçois ce message:
Warning: array_Push() expects parameter 1 to be array, null given
Voici mon code:
$newArray = array();
foreach ( $array as $key => $value ) {
$array[$key + ($value*100)] = $array[$key];
unset ( $array[$key] );
array_Push ( $newArray [$key], $value );
}
//}
print_r($newArray);
Où est-ce que je me suis trompé?
Voici votre problème:
$ newArray [$ key] est null car $ newArray est un tableau vide et n'a pas encore de valeurs.
Vous pouvez remplacer votre code par
array_Push( $newArray, $value );
ou au lieu de array_Push à utiliser
$newArray[$key] = $value;
afin que vous puissiez conserver l'index de votre clé $.
J'utilise la fonction prédéfinie array_merge pour Push in array comme associative.
Par exemple:-
$jsonDataArr=array('fname'=>'xyz','lname'=>'abc');
$pushArr=array("adm_no" => $adm_no,'date'=>$date);
$jsonDataArr = array_merge($jsonDataArr,$pushArr);
print_r($jsonDataArr);//Array ( [fname] => xyz [lname] => abc [adm_no] =>1234 [date] =>'2015-04-22')