これは非常に簡単な質問ですが、PHPでこれをどのように行うことができるか教えてください。PHP:JSONツリーの構文解析
私は私が解析する必要が次のようなJSON構造を持っている:
$string = file_get_contents($url);
$json = json_decode($string, true);
echo $json['X'];
そして、それが生産、うまく動作します:
私はこれを行う、Xノードの内容を取得するには{
"X": "CONTENT OF X",
"Y": "CONTENT OF Y",
"Z": "CONTENT OF Z",
"EMAILS": {
"EMAIL A": [{
"Subject": "heading a1",
"Body": "text"
}, {
"Subject": "heading a2",
"Body": "text"
}
],
"EMAIL B": [{
"Subject": "heading b1",
"Body": "text"
}, {
"Subject": "heading b2",
"Body": "text"
}
],
"EMAIL C": [{
"Subject": "heading c1",
"Body": "text"
}, {
"Subject": "heading c2",
"Body": "text"
}
]
}
}
を
CONTENT OF X
また、私はこれを行うことによって、すべての「件名」すべて「EMAILS」のノードをFINGすることができます:
foreach ($json['EMAILS'] as $value) {
echo $value[0]['Subject']
}
だから私は得る:
heading a1
heading b1
heading c1
それが唯一のヘッダの次のリストを生成しますので、しかし、私は、EMAIL列を反復する方法がわからない:
EMAIL A
EMAIL B
EMAIL C
そして、それを一緒に組み合わせる方法を知ることは非常に助けになるので、私は出力を得る:
EMAILS - EMAIL A - Subject - heading a1
EMAILS - EMAIL B - Subject - heading b1
EMAILS - EMAIL C - Subject - heading c1
実際には、内側の配列の最初の出現、つまり「見出しa1」だけでなく、それらのすべて、すなわち「見出しa1」と「見出しa2」が必要ですか? – RiggsFolly