我成功输出了温度和波动,但是我不知道如何在网关阵列内部输出信号。
<?php
$data = '{
"name": "Aragorn",
"race": "Human",
"payload_fields": {
"temperature": 700
},
"metadata": {
"wave": -600,
"gateways": [{
"signal": -80,
"connection": 1
}]
}
}';
$device = json_decode($data);
//SUCCESS
echo $device->payload_fields->temperature;
echo "<br>";
//SUCCESS
echo $device->metadata->wave;
echo "<br>";
//FAILED HERE
echo $device->metadata->gateways->signal;
在这里显示输出
700
-600
NOTICE Trying to get property of non-object on line number 25
第25行是代码的最后一行。
答案 0 :(得分:2)
如果仔细观察,您的gateways
节点将包含对象条目的 array ,而不仅仅是一个。
第一个是:
echo $device->metadata->gateways[0]->signal;
答案 1 :(得分:1)
由于网关位于阵列中,因此执行此操作。
echo $device->metadata->gateways[0]->signal;