У меня есть API, который показывает данные с измерителей мощности в моем офисе. Всего четыре метра, и возвращаемые значения - это текущее потребление и общее потребление на разных счетчиках.
Я могу получить ответ как JSON (я не знаю, правильный ли это путь, но я новичок в API и это единственный подход, который я знаю), и я могу сказать, что это многомерный массив, но я не в состоянии получить отдельные значения. Мне кажется, что я близко, но я просто не могу заставить его работать.
Я пытаюсь дозвониться до счетчика с названием "Meter_Power_2" и "value", но нет.
<?php
$url = "http://95.209.138.71:12380/api/v1/measurements";
$data = json_decode(file_get_contents($url), TRUE);
print_r($data);
?>
<br>
<?php
foreach($data as $row){
echo $row['Meter_2_Power']['Value']."<br>";
}
?>
В настоящее время все проходит по кругу и ничего мне не возвращается, так что, очевидно, что-то не так с моим циклом. Пожалуйста, помогите
РЕДАКТИРОВАТЬ: вот отклик в полном объеме.
{
"measurements": [
{
"4000_RelayStatus": {
"Timestamp": "2019-06-21T08:51:06",
"Value": 0.0
},
"Address": "4000"
},
{
"4000_Power": {
"Timestamp": "2019-06-21T08:51:06",
"Value": 0.0
},
"Address": "4000"
},
{
"4001_RelayStatus": {
"Timestamp": "2019-06-21T10:15:47",
"Value": 0.0
},
"Address": "4001"
},
{
"4001_Power": {
"Timestamp": "2019-06-21T10:15:47",
"Value": 0.0
},
"Address": "4001"
},
{
"1200_RelayStatus": {
"Timestamp": "2018-04-23T12:04:14",
"Value": 0.0
},
"Address": "1200"
},
{
"1200_Power": {
"Timestamp": "2018-04-23T12:04:14",
"Value": 0.0
},
"Address": "1200"
},
{
"1100_RelayStatus": {
"Timestamp": "2018-03-28T15:56:49",
"Value": 0.0
},
"Address": "1100"
},
{
"1100_Power": {
"Timestamp": "2018-03-28T15:56:49",
"Value": 0.0
},
"Address": "1100"
},
{
"3000_RelayStatus": {
"Timestamp": "2018-03-27T20:13:18",
"Value": 0.0
},
"Address": "3000"
},
{
"3000_Power": {
"Timestamp": "2018-03-27T20:13:18",
"Value": 0.0
},
"Address": "3000"
},
{
"3500_RelayStatus": {
"Timestamp": "2018-04-25T11:19:54",
"Value": 0.0
},
"Address": "3500"
},
{
"3500_Power": {
"Timestamp": "2018-04-25T11:19:54",
"Value": 0.0
},
"Address": "3500"
},
{
"2500_RelayStatus": {
"Timestamp": "2018-04-25T16:30:35",
"Value": 0.0
},
"Address": "2500"
},
{
"2500_Power": {
"Timestamp": "2018-04-25T16:30:36",
"Value": 0.0
},
"Address": "2500"
},
{
"Address": "2600",
"Meter_1_Power": {
"Timestamp": "2019-06-21T11:44:42",
"Value": 2694.54
}
},
{
"Address": "2600",
"Meter_2_Power": {
"Timestamp": "2019-06-21T11:43:59",
"Value": 48.89
}
},
{
"Address": "2600",
"Meter_1_Total": {
"Timestamp": "2019-06-21T11:43:40",
"Value": 21716.08
}
},
{
"Address": "2600",
"Meter_2_Total": {
"Timestamp": "2019-06-21T11:29:27",
"Value": 1378.03
}
},
{
"Address": "2500",
"Meter_4_Power": {
"Timestamp": "2019-06-21T11:44:58",
"Value": 43.22
}
},
{
"Address": "2500",
"Meter_3_Power": {
"Timestamp": "2019-06-21T11:44:58",
"Value": 3508.51
}
},
{
"Address": "2500",
"Meter_4_Total": {
"Timestamp": "2019-06-21T11:38:16",
"Value": 966.34
}
},
{
"Address": "2500",
"Meter_3_Total": {
"Timestamp": "2019-06-21T11:43:19",
"Value": 39735.44
}
},
{
"2600_RelayStatus": {
"Timestamp": "2018-04-25T16:20:51",
"Value": 0.0
},
"Address": "2600"
},
{
"2600_Power": {
"Timestamp": "2018-04-25T16:20:51",
"Value": 0.0
},
"Address": "2600"
}
],
"result": "OK"
}