从阵列JSON输出PHP获取值

问题描述 投票:-1回答:3

当我使用下面的代码:

print_r($jsoni);

$badge_url = "http://api.steampowered.com/ISteamUserStats/GetGlobalAchievementPercentagesForApp/v0002/?gameid=841370%3Fkey&steamids=76561198108211948&fbclid=IwAR0B4wUlosbqFElHBJw-AkLwb3mGsv42xKdtrEAarDmD97Ur3AprrkW4tCk";

$jsoni = json_decode(file_get_contents($badge_url), true);

我得到以下结果:

Array
(
    [achievementpercentages] => Array
    (
        [achievements] => Array
        (
            [0] => Array
            (
                [name] => GAME_GREEN_LIGHT
                [percent] => 70.9000015259
)

[1] => Array
(
    [name] => CAREER_EARN_BADGE
    [percent] => 62.2999992371
)

我怎样才能得到它,使它只显示名称和比例是多少?

php json
3个回答
1
投票
print_r($jsoni['achievementpercentages']['achievements'])

0
投票

你可以遍历解码后的数据来创建成果名称作为键和百分比为值的关联数组:

$achievements = [];
foreach($jsoni['achievementpercentages']['achievements'] as $achievement)
    $achievements[$achievement['name']] = $achievement['percent'];

其输出:

Array
(
    [GAME_GREEN_LIGHT] => 70.9000015259,
    [CAREER_EARN_BADGE] => 62.2999992371
)

0
投票

所以,现在的IM使用下面的代码。

<?php 
        $achievements = [];
        foreach($jsoni['achievementpercentages']['achievements'] as $achievement)
        $achievements[$achievement['name']] = $achievement['percent'];

        print_r($achievements);
?>

至极的结果

Array ( [GAME_GREEN_LIGHT] => 70.9000015259 [CAREER_EARN_BADGE] => 62.2999992371

我如何得到它显示从顶部的列表底部,而不是在文本的集群?谢谢您的帮助!

© www.soinside.com 2019 - 2024. All rights reserved.