Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法从气象站分析json数组_Php_Arrays_Json - Fatal编程技术网

Php 无法从气象站分析json数组

Php 无法从气象站分析json数组,php,arrays,json,Php,Arrays,Json,我得到一些json数据,如下所示: $data = json_decode(file_get_contents("$api/$features$key$query")); print_r2($data); 这让我明白了以下几点: stdClass Object ( [location] => stdClass Object ( [name] => Boston, Logan International Airport

我得到一些json数据,如下所示:

$data = json_decode(file_get_contents("$api/$features$key$query"));
print_r2($data);
这让我明白了以下几点:

stdClass Object
(
    [location] => stdClass Object
        (
            [name] => Boston, Logan International Airport
            [region] => 
            [country] => United States
            [lat] => 42.36
            [lon] => -71.01
            [tz_id] => America/New_York
            [localtime_epoch] => 1554320436
            [localtime] => 2019-04-03 15:40
        )

    [current] => stdClass Object
        (
            [condition] => stdClass Object
                (
                )

            [uv] => 5
        )

    [forecast] => stdClass Object
        (
            [forecastday] => Array
                (
                    [0] => stdClass Object
                        (
                            [day] => stdClass Object
                                (
                                    [condition] => stdClass Object
                                        (
                                        )

                                )

                            [astro] => stdClass Object
                                (
                                )

                            [hour] => Array
                                (
                                    [0] => stdClass Object
                                        (
                                            [time] => 2019-04-03 00:00
                                            [temp_f] => 41
                                            [condition] => stdClass Object
                                                (
                                                    [text] => Moderate rain
                                                )

                                            [wind_mph] => 9.4
                                            [wind_degree] => 91
                                            [wind_dir] => E
                                            [pressure_in] => 30.7
                                            [precip_mm] => 1
                                            [humidity] => 75
                                            [cloud] => 94
                                            [feelslike_f] => 35.1
                                            [windchill_f] => 35.1
                                            [heatindex_f] => 41
                                            [dewpoint_f] => 33.4
                                            [will_it_rain] => 0
当我尝试获取我使用的位置信息时:

$location = $data['location'];

但这并没有得到数据,我也尝试了=$data['location']['name'],但仍然没有数据

使用第二个参数true

$data = json_decode(file_get_contents("$api/$features$key$query"),true);
这将把您的数据转换为关联数组,然后您可以像处理关联数组一样对其进行操作。

您转换它的方式是一个对象,这就是为什么您必须将它视为一个对象。
而不是打电话

$location = $data['location'];
你必须

$location = $data->location;

使用第二个参数true

$data = json_decode(file_get_contents("$api/$features$key$query"),true);
这将把您的数据转换为关联数组,然后您可以像处理关联数组一样对其进行操作。

您转换它的方式是一个对象,这就是为什么您必须将它视为一个对象。
而不是打电话

$location = $data['location'];
你必须

$location = $data->location;

true
添加到
json\u decode()
语句以将json转换为数组,然后可以使用所使用的语法获取数据。
var\u dump($data->location)
给你带来了什么?投票输入错误,即使它不是真正的输入错误。但这仍然是一个小问题,它是一个问题来回答真棒,这就是它的全部。感谢将
true
添加到
json\u decode()
语句以将json转换为数组,然后您可以使用所使用的语法获取数据。
var\u dump($data->location)
给你带来了什么?投票输入错误,即使它不是真正的输入错误。但这仍然是一个小问题,它是一个问题来回答真棒,这就是它的全部。谢谢