簡體   English   中英

Foreach循環多維數組

[英]Foreach loop Multidimensional Array

我正在使用從第三方來源收到的多維數組,因此無法更改其布局。 它的大學,我想循環的模塊名稱,而不是ID的。

使用此foreachloop時

<?php echo "<ul>";
                foreach($array['Course']['Modules']['Module'] as $key => $value)
                {
                    foreach($value as $keys => $values)
                    {
                        echo "<li>";
                            foreach($values as $thirdkey => $thirdvalues)
                            {
                            echo $thirdvalues . " " ;
                            }
                        echo "</li>";
                }
                    }
                echo "</ul>"
            ?>

我得到以下內容,但我不需要moduleID:

003646 T.I.G. WELDING ALUMINIMUM INTERMEDIATE
003644 T.I.G. WELDING STAINLESS STEEL INTERMEDIATE
003633 MIG WELDING INTERMEDIATE
003552 MANUAL METAL ARC WELDING INTERMEDIATE
000016 MOUNTING OF ABRASIVE WHEELS
003299 MACHINE TOOLS (WELDING)
000001 INDUCTION
000002 CAREER PLANNING AND JOB SEEKING SKILLS
000029 OXY-ACETYLENE CUTTING
003757 THEORY OF WELDING
000003 IN-COMPANY
000664 SAFEPASS

這是我的數組,任何人都可以幫助我返回模塊標題嗎??? 排列

([Certification] => IT Systems Support - PC Maintenance (L1)
 [Modules] => Array
            (
                [Module] => Array
                    (
                        [0] => Array
                            (
                                [@attributes] => Array
                                    (
                                        [ModuleID] => 004839
                                        [Title] => IT SYSTEMS SUPPORT- PC MAINTENANCE
                                    )

                            )

                        [1] => Array
                            (
                                [@attributes] => Array
                                    (
                                        [ModuleID] => 007685
                                        [Title] => COMPTIA A+ - 220 801
                                    )

                            )

                        [2] => Array
                            (
                                [@attributes] => Array
                                    (
                                        [ModuleID] => 007684
                                        [Title] => COMPTIA A+ - 220-802
                                    )

                            )

                        [3] => Array
                            (
                                [@attributes] => Array
                                    (
                                        [ModuleID] => 004757
                                        [Title] => PREPARING FOR WORK
                                    )

                            )

                    )

            )

    )

預先感謝 :)

您可以直接指向它。

foreach($array['Course']['Modules']['Module'] as $key => $value) {
    echo "<li>{$value['@attributes']['Title']}</li>";
}

旁注:這很可能是一個SimpleXML對象,它被饋送到json編碼/解碼中。

$array = json_decode(json_encode($xml), true); // actually don't need to do this one

我建議完全使用SimpleXML ,因為它已經能夠獲取所有這些值。

您不在乎嘗試使用$thirdvalues["Title"]對嗎?看起來像是一團糟,但是我不明白為什么如果您要打印它就不會起作用。

也可以做if( $key == "Title" ) echo $value

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM