`{
"student": [{
"name": "Alice",
"rno": "187654"
}]
}`
J'essaye d'obtenir la valeur de rno en utilisant le code PHP
`$data = json_decode($json, true);
foreach ($data as $item) {
$name = $item['name'] ;
$number= $item['rno'] ;
}`
3 réponses
Le code de @Sahil Gulati est plus parfait et une bonne façon d'analyser le json en php
Voici une autre façon d'analyser les données json en php
<?php
$data = json_decode($json, true);
foreach ($data as $item) {
foreach ($item as $val) {
echo $name = $val['name'];
echo $number = $val['rno'];
}
}
?>
Le code ci-dessus que j'ai partagé, vous pouvez le comprendre facilement. mais après avoir appris comment analyser les données json en php, vous devriez utiliser la méthode de @Sahil Gulati.
Vous devriez examiner de plus près la structure des données encodées json. Cela aide à mettre en œuvre une itération propre:
<?php
$input = <<<JSON
{
"student": [{
"name": "Alice",
"rno": "187654"
}]
}
JSON;
$data = json_decode($input);
$output = [];
array_walk($data->student, function($entry) use (&$output) {
$output[] = $entry->rno;
});
print_r($output);
La sortie du code ci-dessus est évidemment:
Array
(
[0] => 187654
)
Le format de sortie a été choisi sous forme de tableau, car la structure json suggère que plusieurs étudiants peuvent être contenus.
Si vous n'êtes directement intéressé que par la propriété rno
de la première entrée du tableau student
, vous pouvez y accéder directement:
<?php
$input = <<<JSON
{
"student": [{
"name": "Alice",
"rno": "187654"
}]
}
JSON;
$data = json_decode($input);
var_dump($data->student[0]->rno);
Le résultat de cette variante est évidemment:
string(6) "187654"
Remplacez ceci par:
foreach ($data as $item)
Ceci:
foreach ($data["student"] as $item)
Code PHP:
<?php
ini_set('display_errors', 1);
$data = json_decode($json, true);
foreach ($data["student"] as $item)
{
$name = $item['name'];
$number = $item['rno'];
}
Questions connexes
De nouvelles questions
php
PHP est un langage de script largement utilisé, de haut niveau, dynamique, orienté objet et interprété, principalement conçu pour le développement Web côté serveur. Utilisé pour les questions sur le langage PHP.