如何解决JSON 孩子在 PHP 中只得到第一个孩子
一整天都在尝试做一些看起来很简单的事情,但我无法从 json 中获取所有子节点(仅获取此代码中的第一个子节点):
foreach($obj->data[0]->region as $code_id) {
echo $code_id->code_id . "\n";
}
下面的 JSON 片段:
{
"data": [
{
"record_id": 9,"region": [
{
"code_id": 2,"code_name": "CA"
},{
"code_id": 3,"code_name": "WY"
}
]
},{
"record_id": 10,"region": [
{
"code_id": 4,{
"code_id": 5,"code_name": "WY"
}
]
}
]
}
教程的任何链接或建议都非常感谢:(
解决方法
如果你想遍历两个数组,下面的方法会起作用:
// Loop over everything inside of data
foreach($obj->data as $thing ) {
// Loop over each region
foreach($thing->region as $region) {
echo $region->code_id . "\n";
}
}
输出为:
2
3
4
5
,
试试这个...
不是最优化的解决方案,但应该能让您重回正轨。
foreach($obj->data[0] as $record) {
if(isset($record->region)){
foreach($record->region as $code){
echo $code->code_id . "\n";
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。