首页 > 解决方案 > 数组和json解码问题

问题描述

我有点困惑,我有以下内容;

array(4) { ["id"]=> string(1) "2" ["result"]=> array(5) { ["account"]=> string(34) "rf2DKsfbZuCa2WwQAg49cRXqYuRCTszUTp" ["assets"]=> array(1) { ["rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ"]=> array(1) { [0]=> array(2) { ["currency"]=> string(3) "FLX" ["value"]=> string(9) "999999999" } } } ["ledger_hash"]=> string(64) "E44084AAC1F1AE2C7147675BF8F763ED7620DC82E1B1A5BD6DC6F640652F1B63" ["ledger_index"]=> int(17773072) ["validated"]=> bool(true) } ["status"]=> string(7) "success" ["type"]=> string(8) "response" }

我试图呼应货币;我有以下,但它不工作。

  $response = websocket_read($sp,$errstr);
  $decode = json_decode($response, true);
  
    echo'<br><br>';
    echo $decode['result']['assets']['currency'];
    
    echo'<br><br>';
    echo "Server responed with: '" . $response ."'\n";

不工作的线路是echo $decode['result']['assets']['currency'];

谢谢

标签: phparraysjson

解决方案


rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ将值作为数组,或者从这部分中删除方括号以将其视为值

"rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ":[{"currency":"FLX","value":"999999999"}]

"rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ":{"currency":"FLX","value":"999999999"}

或使用索引获取值

echo $decode['result']['assets']['rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ'][0]['currency'];

推荐阅读