我如何循环使用foreach为json解码数组

时间:2018-03-28 08:10:34

标签: php arrays foreach foreign-keys

Array
(
    [id] => 7.8803211967429E+17
    [title] => Example T-Shirt
    [body_html] => 
    [variants] => Array
        (
            [0] => Array
                (
                    [id] => 6.4266704147271E+17
                )

            [1] => Array
                (
                    [id] => 7.576504846442E+17
                    [product_id] => 7.8803211967429E+17
                )

        )

    [options] => Array
        (
            [0] => Array
                (
                )

        )

)

我需要从每个主阵列中获取ID。我使用以下方法解码json来获取此数组:

<?php

    set_time_limit(0);
    $json = file_get_contents('imarasoft.net/imarasoft/abd/WebHook/response.txt');
    $arrays = json_decode($json, true);
    print_r($arrays);
    foreach ($arrays as $array) {
        echo $array["id"];
    }

如何使用foreach打印ID? 我已经编辑了这个问题并且已经提供了完整的阵列格式

1 个答案:

答案 0 :(得分:1)

如果您在阵列中获得更多元素,那么您可以使用下面的代码段。这个foreach循环遍历所有数组并给出每个数组键的值。在这里,您可以使用title,id,vendor,product_type等任何值......

如果您想在id内访问variants,请使用以下代码。

$json = file_get_contents('http://imarasoft.net/imarasoft/abd/WebHook/response.txt');
$arrays = json_decode($json, true);
foreach ($arrays["variants"] as $array) {
    echo $array["id"];
}

如果您只想访问root id,那么您只需要执行一个行代码段。

echo $arrays["id"];