테스트 사이트 - 개발 중인 베타 버전입니다

json 에서 첫번째 것 고르기 채택완료

스노든 8년 전 조회 2,527

$json = '

{

  "messages" : {

    "-KVq_v373CXe7laxLWlG" : {

      "date" : 1478384658515,

      "text" : "밸리시마미용실 네일  661-294-9264 is deleted."

    },

    "-KVqa06DagtWdTGpP2Fs" : {

      "date" : 1478384683289,

      "k" : "밸리시마미용실 네일 ",

      "text" : "밸리시마미용실 네일  has been inserted."

    },

    "-KVqt7Sx3Tms64JM5tz5" : {

      "date" : 1478389694183,

      "text" : "리딩에지    5 0 508-836-4800 is deleted."

    }

}

}

';

$yummy = json_decode($json, true);

echo $yummy['messages']['-KVq_v373CXe7laxLWlG']['date']; //Maple

위와 같이 하면 되긴 되는데 [1] 첫번째를 고르면 안되고

['-KVq_v373CXe7laxLWlG'] 처럼 해야 선택이 되는데 

이게 무슨 암호 같아서 예측할수 없는 문자열이라서

숫자로 [1], [2] 이런식으로 호출 할려고 하는데

어떻게 해야 하나요?

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
8년 전

만들면 가능이야 하겠지만

인덱스 재연산이 필요한 부분이므로 다른 방법으로도 해결이 가능하다면

인덱스기반 배열을 고수할 필요는 없다고 생각합니다. 

</p><p><span style="color: rgb(72, 72, 72); font-family: Arial, 돋움, Dotum; font-size: 14.004px;">// $yummy['messages']['-KVq_v373CXe7laxLWlG']['date']</span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">// 의 또다른 표현은 current($yummy['messages'])['date']</span></span> </p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">
</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">// 1. 개별확인</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">echo current($yummy['messages'])['date'] . PHP_EOL; next($yummy['messages']);</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">echo current($yummy['messages'])['date'] . PHP_EOL; next($yummy['messages']);</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">echo current($yummy['messages'])['date'] . PHP_EOL; next($yummy['messages']);</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">
</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">// 2. 루프확인</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">foreach ($yummy['messages'] as $v) {</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">    echo $v['date'] . PHP_EOL;</span></span></p><p><span style="font-family: Arial, 돋움, Dotum; color: rgb(72, 72, 72);"><span style="font-size: 14.004px;">}</span></span></p><p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

8년 전

이렇게 해보세요

$cc = array_shift($yummy['messages']); echo $cc[date];

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인