Php 如何在foreach()中选择foreach()的第一个键

Php 如何在foreach()中选择foreach()的第一个键,php,json,foreach,Php,Json,Foreach,我似乎无法正常工作,它只返回每个值0。我只需要data1下的第一个键,因此1111和3333的值是相同的。如果我向值0添加一个键,则会得到“1”作为其值,并显示相同数量的键。在这个例子中,有四个,只有两个应该返回 Json: PHP: foreach($json->data as$data){ foreach($data->data1作为$value){ 回显“{$value->value0}”; } } 如果需要两个数组0索引 $json = json_decode($json, true);

我似乎无法正常工作,它只返回每个值0。我只需要data1下的第一个键,因此1111和3333的值是相同的。如果我向值0添加一个键,则会得到“1”作为其值,并显示相同数量的键。在这个例子中,有四个,只有两个应该返回

Json:

PHP:

foreach($json->data as$data){
foreach($data->data1作为$value){
回显“{$value->value0}
”; } }
如果需要两个数组0索引

$json = json_decode($json, true);
foreach( $json['data'] as $data) {
  echo $data['data1'][0]['value0']; //11113333 
}
或者不使用foreach直接使用以获取一个值

echo $json['data'][0]['data1'][0]['value0']; //1111

要保持对象版本,可以这样循环:

$jsonObj    =   json_decode($json);

foreach($jsonObj as $value) {
    foreach($value as $data => $object) {
            echo $object->data1[0]->value0;
        }
    }
应该给你:

11113333

foreach($json->data as$data)echo$data->data1[0]->value0我不能选择这个作为答案,但我会的。我很接近。我把钥匙放错地方了。这也将它清理成一个foreach()。谢谢,我想我会选择这个作为答案。这与@deceze中的内容几乎相同。0索引是我所需要的。这不正确。第二个foreach()的工作原理与其他答案一样,但是嵌套在第一个答案中,它周围有错误。这很奇怪,当我运行它时,没有错误,它会回显值。
$jsonObj    =   json_decode($json);

foreach($jsonObj as $value) {
    foreach($value as $data => $object) {
            echo $object->data1[0]->value0;
        }
    }
11113333