我正在使用PHP Decode在PHP中解析JSON文件

$json= file_get_contents ("resultate.json");


$json = json_decode($json, true);

然后我试图遍历结果并显示它们

 foreach($json as $zh){


$name = $zh[0]["VORLAGEN"][0]["JA_PROZENT"];
$JA = $zh[0]["VORLAGEN"][0]["VORLAGE_NAME"];
$kreis = $zh[0]["NAME"];
$kreis1 = $zh[22]["NAME"];




 echo $name;
 echo $JA;
 echo $kreis;
 echo $kreis1;
    ...}

但我只收到一个元素,例如位置0或位置22。我想接收所有结果并将它们显示在列表中。 在下面您可以看到数组

Array
(
    [GEBIETE] => Array
        (
            [0] => Array
                (
                    [VORLAGEN] => Array
                        (
                            [0] => Array
                                (
                                    [VORLAGE_NAME] => Kantonale Volksabstimmung über die Vorlage Steuergesetz (StG) (Änderung vom 1. April 2019; Steuervorlage 17)
                                    [JA_STIMMEN_ABSOLUT] => 205
                                    [STIMMBETEILIGUNG] => 28.11
                                    [NEIN_STIMMEN_ABSOLUT] => 183
                                    [VORLAGE_ID] => 2491
                                    [JA_PROZENT] => 52.84
                                )

                        )

                    [NAME] => Aeugst a.A.
                    [WAHLKREIS] => 0
                    [BFS] => 1
                )

            [1] => Array
                (
                    [VORLAGEN] => Array
                        (
                            [0] => Array
                                (
                                    [VORLAGE_NAME] => Kantonale Volksabstimmung über die Vorlage Steuergesetz (StG) (Änderung vom 1. April 2019; Steuervorlage 17)
                                    [JA_STIMMEN_ABSOLUT] => 1000
                                    [STIMMBETEILIGUNG] => 26.15
                                    [NEIN_STIMMEN_ABSOLUT] => 851
                                    [VORLAGE_ID] => 2491
                                    [JA_PROZENT] => 54.02
                                )

                        )

                    [NAME] => Affoltern a.A.
                    [WAHLKREIS] => 0
                    [BFS] => 2
                )

            [2] => Array
                (
                    [VORLAGEN] => Array
                        (
                            [0] => Array
                                (
                                    [VORLAGE_NAME] => Kantonale Volksabstimmung über die Vorlage Steuergesetz (StG) (Änderung vom 1. April 2019; Steuervorlage 17)
                                    [JA_STIMMEN_ABSOLUT] => 661
                                    [STIMMBETEILIGUNG] => 30.98
                                    [NEIN_STIMMEN_ABSOLUT] => 454
                                    [VORLAGE_ID] => 2491
                                    [JA_PROZENT] => 59.28
                                )

                        )

                    [NAME] => Bonstetten
                    [WAHLKREIS] => 0
                    [BFS] => 3
                )

您能告诉我如何打印此数组的所有元素吗?

#1楼 票数:1

您的json中有GEBIETE层,因此将foreach($json as $zh)更改为foreach($json["GEBIETE"] as $zh)

#2楼 票数:0

您可以嵌套多个foreach

$root = $json['GEBIETE'];

foreach ($root as $elem) {
    foreach ($elem as $key => $value) {
        // VORLAGEN is an array of its own so if you want to print the keys you should foreach this value as well
        if(is_array($value)) {
            foreach ($value[0] as $k => $v) {
                echo $k."\t".$v;
            }
        }
        else {
            echo $value;
        }
    }
}

  ask by devnull translate from so

未解决问题?本站智能推荐:

2回复

遍历多维数组

我有一个具有这种结构的数组: 我如何遍历数组以输出所有可能的排列,即 另一个问题是,我不知道可能有多少个条件数组,因此很遗憾,我不能只使用3个嵌套循环。 我正在使用PHP,尽管我认为伪代码解决方案会很好,并且我可以适应它。
2回复

遍历多维数组

我有这个数组: 我想遍历数组,仅在表格中返回每个学期(1年,2年和3年)每种产品的价格。 ...但是我什至无法遍历数组。 这是调用API并返回std对象的代码: 这是我尝试的: 以下返回错误:“不能将STDClass类型的对象用作数组” 我也尝试过: 我也试过了:
1回复

遍历多维数组

我正在使用php和dropbox api开发应用程序,并试图遍历多维数组并输出到表。 到目前为止,这是我的代码: 这是数组的print_r的输出: 我尝试了多种不同方法的组合,例如: 多维数组中的问题循环 PHP foreach遍历多维数组 PHP foreach遍历
1回复

如何遍历此多维数组?

所以我试图遍历一系列categories和sub-categories但是我遇到了foreach loop麻烦。 一旦数组工作完毕,我将创建一个菜单,如果您将鼠标悬停在某个类别上,则会显示子类别。 这么说吧,我在逻辑上没有希望:| 这是我的数组以及尝试过的循环: 我在此之后尝试的更新
1回复

如何遍历多维数组?

我目前正在从公司的API获取JSON响应,并将其转换为如下所示的PHP数组: 当我在$api_details上运行var_dump时,我得到了: 我正在尝试做两件事,却无法弄清楚如何使用多维数组。 我需要检查metadata > iserror是否为false 。 如果不是
3回复

如何遍历多维数组

我有一个看起来像这样的数组: 我想做的是遍历“ apple”元素并输出如下内容: 我该怎么做? 因此,我的主要目标是将日期和值组织在一起。 我的数组数据比上面的示例长得多,但是我只需要帮助才能使工作代码循环并回显类似上面的示例的内容。 我尝试使用foreach ,但是无法正常工
3回复

遍历多维数组

我正在使用以下代码遍历多维数组,并找到去过某所大学的用户,在本例中为UCF。 多维数组看起来像这样。 以下是来自Facebook Graph API的朋友列表: 我运行了一个类似的程序来查找确实有效的某些主题的用户专业,但是由于某些原因,上面的代码不起作用。 这是可行的: 一如既
3回复

如何遍历多维数组?

我有这样的数组。 该数组是动态创建的 我需要做的是使用2 foreach或1 foreach和1 for循环,以便我可以像这样获得日期的每个值 但只能检索2013-04-02和2013-04-03,即数据未上传的0索引日期和电池问题的0索引日期。 基本上,我需要比较每个值和其他内容,