source

PHP JSON 개체의 데이터 처리

factcode 2022. 10. 14. 22:38
반응형

PHP JSON 개체의 데이터 처리

JSON의 Twitter Search API에서 데이터를 트렌드합니다.

다음을 사용하여 파일 가져오기:

$jsonurl = "http://search.twitter.com/trends.json";
$json = file_get_contents($jsonurl,0,null,null);
$json_output = json_decode($json);

이 개체의 데이터로 작업하려면 어떻게 해야 합니까?배열로?[name] 값에서 데이터를 추출하기만 하면 됩니다.

JSON 개체는 다음을 포함합니다.

stdClass Object
(
    [trends] => Array
        (
            [0] => stdClass Object
                (
                    [name] => Vote
                    [url] => http://search.twitter.com/search?q=Vote
                )

            [1] => stdClass Object
                (
                    [name] => Halloween
                    [url] => http://search.twitter.com/search?q=Halloween
                )

            [2] => stdClass Object
                (
                    [name] => Starbucks
                    [url] => http://search.twitter.com/search?q=Starbucks
                )

            [3] => stdClass Object
                (
                    [name] => #flylady
                    [url] => http://search.twitter.com/search?q=%23flylady
                )

            [4] => stdClass Object
                (
                    [name] => #votereport
                    [url] => http://search.twitter.com/search?q=%23votereport
                )

            [5] => stdClass Object
                (
                    [name] => Election Day
                    [url] => http://search.twitter.com/search?q=%22Election+Day%22
                )

            [6] => stdClass Object
                (
                    [name] => #PubCon
                    [url] => http://search.twitter.com/search?q=%23PubCon
                )

            [7] => stdClass Object
                (
                    [name] => #defrag08
                    [url] => http://search.twitter.com/search?q=%23defrag08
                )

            [8] => stdClass Object
                (
                    [name] => Melbourne Cup
                    [url] => http://search.twitter.com/search?q=%22Melbourne+Cup%22
                )

            [9] => stdClass Object
                (
                    [name] => Cheney
                    [url] => http://search.twitter.com/search?q=Cheney
                )

        )

    [as_of] => Mon, 03 Nov 2008 21:49:36 +0000
)

이런 거 말하는 거야?

<?php

$jsonurl = "http://search.twitter.com/trends.json";
$json = file_get_contents($jsonurl,0,null,null);
$json_output = json_decode($json);

foreach ( $json_output->trends as $trend )
{
    echo "{$trend->name}\n";
}

사용하시는 경우json_decode($string, true)오브젝트는 표시되지 않고 모든 것이 연관 배열 또는 번호 색인 배열로 표시됩니다.PHP에 의해 제공되는 stdObject는 퍼블릭 속성을 가진 멍청한 컨테이너에 불과하기 때문에 처리하기가 훨씬 쉽습니다.

$array = json_decode($string, true);

echo $array['trends'][0]['name'];

당신이 정의한 객체처럼 사용하세요.

$trends = $json_output->trends;

언급URL : https://stackoverflow.com/questions/263392/handling-data-in-a-php-json-object

반응형