簡體   English   中英

PHP如何遍歷多維數組

[英]Php how to loop through multidimensional array

如何按以下方式遍歷多維數組並通過鍵名稱獲取鍵及其值?

 $leaveTypes = (object) [
                 [
                   "name" => "Holiday",
                   "colour" => "#cc6699",
                   "deducted" => true,
                 ],
                 [
                   "name" => "Sick Leave",
                   "colour" => "#996666",
                   "deducted" => false,
                ]
             ];

     foreach($leaveTypes as $leaveType)
     {
           $someVariable = $leaveType->name;

     }

上面給了我一個錯誤:試圖獲取非對象的屬性。

您正在訪問數組而不是對象,因此應使用數組語法:

foreach($leaveTypes as $leaveType)
{
    $someVariable = $leaveType['name'];
}

編輯 :( (object)強制轉換了很多問題,在這種情況下,您需要一個對象數組,以便可以遍歷它們:

$leaveTypes = [
    (object) [
        "name" => "Holiday",
        "colour" => "#cc6699",
        "deducted" => true,
    ],
    (object) [
        "name" => "Sick Leave",
        "colour" => "#996666",
        "deducted" => false,
    ]
];
foreach($leaveTypes as $leaveType)
{
    $someVariable = $leaveType->name;
}

兩種解決方案在實踐上是相同的,關聯數組就可以了。

暫無
暫無

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

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