在PHP中从JSON获取值

时间:2016-04-30 09:15:13

标签: php json

我正在尝试使用PHP从JSON提要中获取一些值。由于某种原因,我已经尝试了许多小时而没有成功。

我想要实现的是从json feed获取每个项目的标题,如下所示:

stdClass Object
(
[rss] => stdClass Object
    (
        [@attributes] => stdClass Object
            (
                [version] => 2.0
            )

        [channel] => stdClass Object
            (
                [title] => PR.com Press Releases
                [link] => http://www.PR.com/
                [description] => Latest news releases from PR.com
                [ttl] => 60
                [image] => stdClass Object
                    (
                        [title] => PR.com Press Releases
                        [link] => http://www.PR.com/
                        [url] => http://www.PR.com/images/logo_white.jpg
                    )

                [item] => Array
                    (
                        [0] => stdClass Object
                            (
                                [title] => Nation’s Top Online Medical Weight Loss Provider Now www.hCGTreatments.com
                                [link] => http://www.pr.com/press-release/669077
                                [guid] => http://www.pr.com/press-release/669077
                                [description] => <p><em>With an improved protocol and advancements in technology, HCGTreatments.com has become one of the most reliable names in online weight loss.</em></p>
                                [pubDate] => Sat, 30 Apr 2016 07:00:00 +0000
                                [dc_creator] => Diet Doc
                                [dc_language] => en-us
                                [dc_format] => text/html
                                [dc_identifier] => http://www.pr.com/press-release/669077
                            )

                        [1] => stdClass Object
                            (
                                [title] => Sentynl Therapeutics, Inc. Launches Its Commercial Organization
                                [link] => http://www.pr.com/press-release/669136
                                [guid] => http://www.pr.com/press-release/669136
                                [description] => <p>Sentynl Therapeutics, Inc. Launches Its Commercial Organization</p>
                                [pubDate] => Sat, 30 Apr 2016 07:00:00 +0000
                                [dc_creator] => Sentynl Therapeutics, Inc.
                                [dc_language] => en-us
                                [dc_format] => text/html
                                [dc_identifier] => http://www.pr.com/press-release/669136
                            )

                        [2] => stdClass Object
                            (
                                [title] => Professional of the Year 2015, Bruce H. Levin, is Now a Lifetime VIP in America’s Registry of Outstanding Professionals
                                [link] => http://www.pr.com/press-release/664848
                                [guid] => http://www.pr.com/press-release/664848
                                [description] => <p>Professional of the Year 2015, Bruce H. Levin, is Now a Lifetime VIP in America’s Registry of Outstanding Professionals</p>
                                [pubDate] => Sat, 30 Apr 2016 07:00:00 +0000
                                [dc_creator] => America's Registry of Outstanding Professionals
                                [dc_language] => en-us
                                [dc_format] => text/html
                                [dc_identifier] => http://www.pr.com/press-release/664848
                            )

                    )

            )

    )

)

我的PHP代码如下所示:

$url = "http://example.com/file.json"; // just an example
$json_file = file_get_contents("$url");

$json = json_decode($json_file, true);

foreach($rss->$item as $mydata)
{
echo $mydata->title . "\n";
} 

我已经尝试了数百种变体但未能获得所有标题..

也许有人可以指出我正确的方向。

谢谢:)

1 个答案:

答案 0 :(得分:0)

尝试获取此类对象

$url = "http://example.com/file.json"; // just an example
$json_file = file_get_contents("$url");

$json = json_decode($json_file, true);

foreach($rss->$item as $mydata->$value)
{
echo $value->title . "\n";
} 
相关问题