[英]How to get the values from JSON Array Stored as Value in JSON using PHP?
`{
"student": [{
"name": "Alice",
"rno": "187654"
}]
}`
我正在嘗試使用PHP代碼獲取rno的值
`$data = json_decode($json, true);
foreach ($data as $item) {
$name = $item['name'] ;
$number= $item['rno'] ;
}`
@Sahil Gulati的代碼更完美,是解析php中json的正確方法
這是解析php中json數據的另一種方法
<?php
$data = json_decode($json, true);
foreach ($data as $item) {
foreach ($item as $val) {
echo $name = $val['name'];
echo $number = $val['rno'];
}
}
?>
我分享的上述代碼可以輕松理解。 但是在學習了如何在php中解析json數據后,您應該使用@Sahil Gulati的mathod。
更改為:
foreach ($data as $item)
這個:
foreach ($data["student"] as $item)
PHP代碼:
<?php
ini_set('display_errors', 1);
$data = json_decode($json, true);
foreach ($data["student"] as $item)
{
$name = $item['name'];
$number = $item['rno'];
}
您應該仔細研究json編碼數據的結構。 這有助於實現干凈的迭代:
<?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);
上面代碼的輸出顯然是:
Array
(
[0] => 187654
)
輸出格式已選擇為數組,因為json結構表明可以包含多個學生。
如果您僅對student
數組中第一個條目的rno
屬性直接感興趣,則可以直接訪問它:
<?php
$input = <<<JSON
{
"student": [{
"name": "Alice",
"rno": "187654"
}]
}
JSON;
$data = json_decode($input);
var_dump($data->student[0]->rno);
該變量的輸出顯然是:
string(6) "187654"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.