繁体   English   中英

使用php从URL获取json数据

[英]get json data from URL using php

在这里,我尝试从以下网址获取json数据

自由软件网址 :http:

根据以上链接包含我想要获得的以下信息

{
    "places": {
        "place": [
            {
                "place_id": "Dm5SiT1TULMEIMYN",
                "woeid": "2295402",
                "latitude": 23.03,
                "longitude": 72.591,
                "place_url": "/India/Gujarat/Ahmedabad",
                "place_type": "locality",
                "place_type_id": 7,
                "timezone": "Asia/Kolkata",
                "_content": "Ahmedabad, Gujarat, India",
                "woe_name": "Ahmedabad"
            },
            {
                "place_id": "mz1zSK1YUrJTfvUrOA",
                "woeid": "90883450",
                "latitude": 23.027,
                "longitude": 72.57,
                "place_url": "/India/Gujarat",
                "place_type": "locality",
                "place_type_id": 7,
                "timezone": "Asia/Kolkata",
                "_content": "Ahmedabad, India",
                "woe_name": "Ahmedabad"
            }
        ],
        "query": "Ahmedabad, Gujarat, India",
        "total": 2
    },
    "stat": "ok"
}

但这里的问题是这个链接返回null我正在使用下面的PHP代码

$json_array = file_get_contents("https://www.flickr.com/services/api/render?method=flickr.places.find&api_key=xxxxx&query=Ahmedabad,%20Gujarat,%20India&format=json&nojsoncallback=1");
$json_array = iconv('UTF-16', 'UTF-8', $json_array);
$json_data=json_decode($json_array,true);
print_r($json_data);

你的电话是错的。 正确的是

https://api.flickr.com/services/rest/?method=flickr.places.find&.....

我发现它,因为你正在调用/api/render方法,所以它会给出pretty printed json

只需使用此网址即可

//https://www.flickr.com/services/rest?method=flickr.places.find&api_key=c5336c8cc248142bbda940c1f771bfd5&query=Ahmedabad,%20Gujarat,%20India&format=json&nojsoncallback=1

$json_array = file_get_contents("https://www.flickr.com/services/rest?method=flickr.places.find&api_key=c5336c8cc248142bbda940c1f771bfd5&query=Ahmedabad,%20Gujarat,%20India&format=json&nojsoncallback=1");

$json_data=json_decode($json_array,true);
print_r($json_data);

我尝试了来自Flickr API的示例请求。

https://www.flickr.com/services/rest/?method=flickr.test.echo&format=json&foo=bar&api_key=cddc3ae537ed443aafa20cf2c30086df

您需要在请求URI中添加以下参数format=json 此外,端点必须是/services/rest

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM