PHP는

2017-12-27 1 views
1

내가 배열에서 데이터를 얻을 필요가 빈 키를 제거하여 JSON 배열을 간단하게,하지만 출력은 항상 등 많은 빈 키가 너무 때때로 변화하는 그것에서 인쇄 값 항상 빈 키의 수를 먼저 넣어야합니다. echo $data[0][0]["test"];PHP는

얼마나 많은 빈 키가 있더라도 어떤 상황에서도 echo $data["test"]; 만 쓸 수있게하려면 어떻게해야합니까?

편집 :

[ 
    [ 
     { 
      "test: "testing" 
     } 
    ] 
] 
+0

우리에게 배열 구조의 예를 제시해주십시오. –

+0

함수 만 쓰십시오. – splash58

+0

json 배열 구조가 추가되었습니다. –

답변

4
function printValue($array) 
    foreach($array as $value){ 
    if(is_array($value)){ 
     printValue($value) 
    } 
    else 
     echo $value; 
    } 
} 

기본적 재귀 기능, array는 다른 값을 출력 파고.

두 번째 수준이나 네 번째 수준에서 모든 깊이에 적용됩니다.

-3

그냥 각각 이전 json_decode 한 번 더 사용하는 JSON 배열. 예 : $ json = json_decode (json_decode ($ url)); 값이면

+0

json_decode가 입력으로 문자열을 필요로합니다. json_decode 후에 json_decode를 다시 수행하면 객체 나 배열을 디코드하려고 할 때 오류가 발생합니다. –

-1

당신은 키를 검색하고 반환하기 위해 재귀 함수를 만들 수 있습니다

$json = '[ 
    [ 
     { 
      "test" : "testing" 
     } 
    ] 
]'; 
//Cast to array the json 
$array = json_decode($json,true); 
echo searchKey("test",$array); 

function searchKey($key,$array) { 
    //If key is defined, print it 
    if (isset($array[$key])) { 
     return $array[$key]; 
    } 
    //Else, search deeper 
    else { 
     foreach ($array as $value) { 
      if (is_array($value)) { 
       return searchKey($key,$value); 
      } 
     } 
    } 
} 
+0

왜 부정적인 점이 있습니까? –