我有一个从api得到的json:
{
"data": [{
"BrandID": 1,
"AccountTranID": "138483",
"Datetime": {
"date": "2019-07-31 21:26:15.513000",
"timezone_type": 3,
"timezone": "UTC"
},
"PartyID": 1819748,
"UserID": "adel2X",
"Currency": "USD",
"ProductID": 3,
"ProductCode": "EBZZ",
"ProductTranID": "EBZZ-f90f07cdfeff820904c56696dd72e321",
"GameInfoID": 698,
"GameID": "80233",
"GameTranID": "80238cc6c07f85144d8ade97760f2cbdbff",
"TranType": "GAME_BET",
"AmountReal": "-.010000000000000000",
"AmountPlayableBonus": ".000000000000000000",
"AmountReleasedBonus": ".000000000000000000",
"BalanceReal": ".000000000000000000",
"BalancePlayableBonus": ".000000000000000000",
"BalanceReleasedBonus": ".000000000000000000",
"RollbackTranID": null,
"RollbackTranType": null
}, {
"BrandID": 1,
"AccountTranID": "138484",
"Datetime": {
"date": "2019-07-31 21:26:16.037000",
"timezone_type": 3,
"timezone": "UTC"
},
"PartyID": 1819748,
"UserID": "adel2X",
"Currency": "USD",
"ProductID": 3,
"ProductCode": "GROOVY",
"ProductTranID": "Bo-f90f07cdfeff820904c56696dd72e321re",
"GameInfoID": 698,
"GameID": "80233",
"GameTranID": "80238cc6c07f85144d8ade97760f2cbdbff",
"TranType": "GAME_WIN",
"AmountReal": ".000000000000000000",
"AmountPlayableBonus": ".000000000000000000",
"AmountReleasedBonus": ".000000000000000000",
"BalanceReal": ".000000000000000000",
"BalancePlayableBonus": ".000000000000000000",
"BalanceReleasedBonus": ".000000000000000000",
"RollbackTranID": null,
"RollbackTranType": null
}]
}然后我尝试使用下面的php代码遍历它:
$data = file_get_contents('https://example.com/example');
$json = json_decode($data);
foreach($json->data as $row) {
foreach($row as $key => $val) {
echo $key . ': ' . $val;
echo '<br>';
}}我使用json中的键'data‘来定义行,然后尝试提取值,但没有成功。我没有将解码值设置为"true“,因为我不想将其视为数组,这会是问题所在吗?有什么建议吗?
发布于 2019-08-01 15:34:43
使用json_decode转换关联数组中的json。使用array_walk_recursive获取该数组的所有键和值。
//convert the json in array using json_decode
$json_array = json_decode($json, true); //true is used for 'associative array'.
//using array_walk_recursive get all the key and value
array_walk_recursive($json_array, function($item, $key){
echo $key.':'.$item.PHP_EOL;
});https://stackoverflow.com/questions/57303300
复制相似问题