Maison >développement back-end >tutoriel php >Comment encoder des tableaux PHP en tableaux JSON au lieu d'objets JSON ?
Lorsque vous traitez des tableaux PHP et JSON, il est crucial de comprendre la distinction entre les tableaux JSON et les objets JSON . Les tableaux JSON sont représentés par des crochets, tandis que les objets JSON utilisent des accolades.
Dans votre tableau PHP, les clés sont numériques (0 et 2). Cependant, pour être encodés sous forme de tableau JSON, les tableaux PHP doivent avoir des clés séquentielles commençant à 0.
Le comportement par défaut de json_encode est d'encoder votre tableau en tant qu'objet JSON, c'est pourquoi vous obtenez le résultat vous avez décrit. Pour obtenir un tableau JSON à la place, vous devez réindexer votre tableau PHP séquentiellement à l'aide de array_values().
$input = [ [ 'id' => 0, 'name' => 'name1', 'short_name' => 'n1' ], [ 'id' => 2, 'name' => 'name2', 'short_name' => 'n2' ] ]; $output = json_encode(array_values($input));
Après la réindexation, la sortie de json_encode sera un tableau JSON valide, comme vous le souhaitez :
[ { "id": 0, "name": "name1", "short_name": "n1" }, { "id": 2, "name": "name2", "short_name": "n2" } ]
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!