pubnub中的PHP数组



在pubnub中,我以jsonstring格式将数据上传为{"sensorval":{"zval":64}}

在检索消息时,它检索为

Array([sensorval]=>Array([zval]=>62))

但是我只希望CCD_ 2和CCD_。如何做这个?

我想把变量zval62上传到本地数据库的表中。

$arr = array("sensorval" => array("zval" => 62));
list($key, $value) = array(key($arr["sensorval"]), current($arr["sensorval"]));

key获取密钥("zval"),current获取"sensoval"中当前(第一个atm)元素的值。

[编辑]

$json = '{"sensorval":{"xval":2}}';
$arr = json_decode($json,true);
var_dump($arr);
// prints array(1) { ["sensorval"]=> array(1) { ["xval"]=> int(2) } }
$arr = json_decode($json,true);
print_r($arr);
//prints Array ( [sensorval] => Array ( [xval] => 2 ) )

这等于我的例子中的数组。

你告诉我你得到的数据是这样的:

$pubnub->subscribe('che', function ($envelope) {
    print_r($envelope['message']); 
    return true;
});

为了按照建议运行代码,你必须这样查找:

$pubnub->subscribe('che', function ($envelope) {
    print_r($envelope['message']);
    list($key, $value) = array(
        key($envelope['message']["sensorval"]), 
        current($envelope['message']["sensorval"])
    ); 
    printf("Key: %s, Value: %s", $key, $value);
    return true;
});

最新更新