Maison > Article > développement back-end > Comment encoder un tableau PHP avec des touches numériques non consécutives sous forme de tableau JSON ?
Lors de l'encodage d'un tableau à l'aide de json_encode(), les touches numériques peuvent parfois conduire à la chaîne JSON résultante contenant un objet au lieu de un tableau. Ce problème se pose car les tableaux JavaScript nécessitent une indexation numérique consécutive.
Pour résoudre ce problème sans recourir à la manipulation d'expressions régulières, utilisez array_values() sur la structure externe du tableau. Cette fonction élimine les clés d'origine et les remplace par une numérotation consécutive de base zéro. Voici un exemple :
// Non-consecutive numeric keys in a PHP array $array = array( 2 => array("Afghanistan", 32, 13), 4 => array("Albania", 32, 12) ); // Remove original keys and create consecutive numbers $out = array_values($array); // Encode the modified array echo json_encode($out); // Output: [[Afghanistan, 32, 13], [Albania, 32, 12]]
Cette approche garantit que la chaîne JSON encodée est un tableau de tableaux, comme prévu.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!