PHP循环嵌套数组

时间:2021-04-14 03:08:04

标签: php arrays

我有一个看起来像这样的数组:

    Array
(
    [response] => Array
        (
            [dataInfo] => Array
                (
                    [totalRecordCount] => 362
                    [foundCount] => 5
                    [returnedCount] => 5
                )

            [data] => Array
                (
                    [0] => Array
                        (
                            [fieldData] => Array
                                (
                                    [groupAssetID] => 1020
                                    [groupAssetName] => Standard Equipment
                                )

                            [portalData] => Array
                                (
                                )

                            [recordId] => 823
                            [modId] => 1
                        )

                    [1] => Array
                        (
                            [fieldData] => Array
                                (
                                    [groupAssetID] => 1001
                                    [groupAssetName] => Tools
                                )

                            [portalData] => Array
                                (
                                )

                            [recordId] => 829
                            [modId] => 1
                        )

                    [2] => Array
                        (
                            [fieldData] => Array
                                (
                                    [groupAssetID] => 1005
                                    [groupAssetName] => Spare Parts
                                )

                            [portalData] => Array
                                (
                                )

                            [recordId] => 830
                            [modId] => 1
                        )

                )

        )

    [messages] => Array
        (
            [0] => Array
                (
                    [code] => 0
                    [message] => OK
                )

        )

)

我正在尝试遍历它并在 groupAssetID 数组中提取 groupAssetNamedata 的值,但到目前为止还无法使其正常工作。我试过了:

    foreach ( $records as $record) {
        echo $field . ": " . $value . "<br />\r\n" ;
    }

     foreach ( $records->fieldData as $field=>$value) {
        echo $field . ": " . $value . "<br />\r\n" ;
    }

但这些似乎都不起作用,我无法在这里计算出正确的语法。

1 个答案:

答案 0 :(得分:0)

我设法使用以下语法运行它:

$records = array
(
    'response' => array
        (
            'dataInfo' => array
                (
                    'totalRecordCount' => 362,
                    'foundCount' => 5,
                    'returnedCount' => 5
                ),

            'data' => array
                (
                    0 => array
                        (
                            'fieldData' => array
                                (
                                    'groupAssetID' => 1020,
                                    'groupAssetName' => 'Standard Equipment'
                                ),

                            'portalData' => array
                                (
                                ),

                            'recordId' => 823,
                            'modId' => 1
                        ),

                    1 => array
                        (
                            'fieldData' => array
                                (
                                    'groupAssetID' => 1001,
                                    'groupAssetName' => 'Tools'
                                ),

                            'portalData' => array
                                (
                                ),

                            'recordId' => 829,
                            'modId' => 1
                        ),

                    2 => array
                        (
                            'fieldData' => array
                                (
                                    'groupAssetID' => 1005,
                                    'groupAssetName' => 'Spare Parts'
                                ),

                            'portalData' => array
                                (
                                ),

                            'recordId' => 830,
                            'modId' => 1
                        )
                )
        ),

    'messages' => array
        (
            0 => array
                (
                    'code' => 0,
                    'message' => 'OK'
                )
        )
);

foreach ($records['response']['data'] as $key => $value) {
        
    echo $value['fieldData']['groupAssetID'] . ": " . $value['fieldData']['groupAssetName'] . "<br />\r\n" ;
}

输出:

1020:标准装备
1001:工具
1005:备件

这是您需要的吗?