JSON_ENCODE encode différemment les tableaux clairsemés : objet par rapport au tableau
Lorsque vous travaillez avec des tableaux clairsemés, il est important de comprendre comment se comporte json_encode. Un tableau clairsemé est un tableau qui contient des indices manquants, créant des lacunes dans la séquence numérique.
Le problème
Comme le démontre l'extrait de code fourni, json_encode encode initialement le tableau clairsemé. array $a sous forme de tableau. Cependant, après avoir supprimé un élément à l'aide d'unset, l'appel json_encode suivant produit un objet JSON.
L'explication
JSON n'a aucun moyen de représenter des tableaux avec des indices manquants. En conséquence, json_encode revient à coder des tableaux clairsemés en tant qu'objets JSON lorsqu'il rencontre de telles lacunes.
La solution
Pour éviter ce comportement et garantir que les tableaux clairsemés sont codé de manière cohérente sous forme de tableaux, vous pouvez utiliser array_values($a) avant d'appliquer json_encode. Cette fonction réindexe le tableau, supprimant les espaces et garantissant une sortie cohérente.
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!