php json 大括号_PHP解码JSON

"本文介绍如何在PHP中解码JSON字符串,并访问包含特殊字符的嵌套属性。通过使用json_decode()函数将JSON转换为PHP对象,然后使用属性访问符号->来获取数据。对于包含'.'或'-'的属性名,可以使用大括号语法来正确访问,如$json_o->workers->{'someusername.jason-laptop'}
摘要由CSDN通过智能技术生成

这里有人可以用php解码json帮助我吗?我正在尝试解码JSON API URL

这是我目前所拥有的:

$string = '

{

"username": "someusername",

"unconfirmed_reward": "0.08681793",

"send_threshold": "0.01000000",

"confirmed_reward": "0.02511418",

"workers":

{

"bitcoinjol.jason-laptop": {"last_share": 1307389634, "score": "0", "hashrate": 0, "shares": 0, "alive": false},

"bitcoinjol.david-laptop": {"last_share": 1307443495, "score": "1.7742", "hashrate": 24, "shares": 1, "alive": true},

"bitcoinjol.pierre-pc": {"last_share": 1307441804, "score": "0", "hashrate": 0, "shares": 0, "alive": true},

"bitcoinjol.testJol": {"last_share": 0, "score": "0", "hashrate": 0, "shares": 0, "alive": false}

},

"wallet": "asdasdjsadajdasjdsajasjdajdajs",

"estimated_reward": "0.00131061"

}';

$json_o = json_decode($string);

echo $json_o->username;

并打印出“ someusername”,但在尝试以下操作时我无法打印出来:

echo $json_o->workers->someusername.jason-laptop;

我认为是“.”或我使用的“-”无效?

我希望能够打印出每个工人,然后打印出waller,用户名和奖励等.

可以使用数组或这些对象.我也曾尝试用爆炸将“,”上的$String拆分,但也无法使其正常工作.

使用php 5.3和IIS 7.5运行Server 2008 R2

解决方法:

您可以使用Gumbo建议的大括号语法:

$json_o->workers->{"someusername.jason-laptop"}

但是,最好的方法(imo,为了保持一致性)是将结果对象用作关联数组:

$object = json_decode($string, true);

$object['workers']['bitcoinjol.jason-laptop']['last_share']; // 1307389634

标签:php,json,api,decode

来源: https://codeday.me/bug/20191009/1878220.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值