Maison >développement back-end >tutoriel php >Comment extraire et accéder efficacement aux données de JSON en utilisant PHP ?
JSON, ou JavaScript Object Notation, est un texte- format couramment utilisé pour l’échange de données entre machines ou applications. En PHP, vous pouvez décoder des chaînes JSON en structures de données PHP à l'aide de la fonction json_decode().
Si vous décodez un objet JSON, vous obtiendrez une instance de stdClass, un type d'objet générique en PHP. Pour accéder à ses propriétés, utilisez la syntaxe de l'opérateur fléché (->) :
$json = '{ "name": "John" }'; $object = json_decode($json); echo $object->name; // John
Lors du décodage d'un tableau JSON, vous obtiendrez un tableau PHP normal. Vous pouvez accéder à ses éléments en utilisant la notation entre crochets de tableau ([]) :
$json = '[ "Apple", "Banana", "Orange" ]'; $array = json_decode($json); echo $array[1]; // Banana
Vous pouvez parcourir des tableaux avec des boucles foreach. Pour les tableaux associatifs (lorsque vous décodez un objet JSON sous forme de tableau en utilisant true comme deuxième argument de json_decode()), vous pouvez itérer en utilisant la syntaxe foreach (array_expression as $key => $value).
JSON peut avoir des objets et des tableaux imbriqués. Pour accéder aux propriétés ou aux éléments des structures imbriquées, utilisez la même syntaxe que ci-dessus, en enchaînant les caractères -> ou [] opérateurs :
$json = '{ "user": { "name": "Emily", "email": "emily@example.com" } }'; $user = json_decode($json); echo $user->user->name; // Emily
Lors du décodage d'un objet JSON en tant que tableau associatif, les clés seront des chaînes. Vous pouvez y accéder en utilisant la notation entre crochets de tableau avec des clés de chaîne :
$json = '{ "firstName": "Joe", "lastName": "Doe" }'; $assoc = json_decode($json, true); echo $assoc['firstName']; // Joe
json_decode() renvoie null :
Le nom de la propriété de l'objet contient des caractères spéciaux :
Utilisez des accolades pour accéder aux propriétés de l'objet avec des caractères spéciaux :
$json = '{"@attributes":{"answer":42}}'; $object = json_decode($json); echo $object->{'@attributes'}->answer; // 42
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!