你能做一个$ json = file_get_contents($ url);在foreach语句中已经使用$ json = file_get_contents($ url);?

时间:2013-09-23 18:04:43

标签: php foreach file-get-contents

$url = "www.test.com"
$json = file_get_contents($url);
$data = json_decode($json);

foreach($data as $mydata) {

    $id = $mydata->id;

        $url2 = "www.test.com/$id";
        $json2 = file_get_contents($url2);
        $data2 = json_decode($json2);
        var_dump($data2); // seems to always be null?? :(

            foreach($data2 as $mydata2) {

                   .............
                }
}

我得到的错误是警告:为foreach()提供的参数无效,这是因为data2不是数组....

猜测我不能像我一样堆叠file_get_contents()。有办法解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

首先检查,你的网址是否返回JSON?如果是,则可以使用以下代替

$data = json_decode($json, TRUE);

TRUE返回一个数组而不是一个对象。

答案 1 :(得分:-2)

网址未返回有效的JSON。