php - 数组和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'];
谢谢
解决方案
您rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ
将值作为数组,或者从这部分中删除方括号以将其视为值
"rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ":[{"currency":"FLX","value":"999999999"}]
至
"rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ":{"currency":"FLX","value":"999999999"}
或使用索引获取值
echo $decode['result']['assets']['rDroJrYXN7vRzLbH6tFXTViVtXGv5ZJGeZ'][0]['currency'];
推荐阅读
- c++ - 这是升级标准库锁的有效方法吗?
- ajax - 在 Wordpress 上使用 ajax 的注册表单
- javascript - 从字节数组在javascript中创建文件对象
- postgresql - postgresql 性能 - 子查询后分组
- reactjs - 你能用 Redux Toolkit + Immer 改变有效载荷吗?
- amazon-web-services - AWS CloudFormation 忽略元数据中的包
- matlab - 以相等的递增间隔生成随机数
- c++ - 错误:操作数类型 std::vector::iterator 和 __gnu_cxx::__normal_iterator 的 'operator=' 不匹配
- javascript - Symfony 5:Ux Turbo Pusher 消息重复
- java - Spring存储库如何根据字段的ID在列表中查找?