我的foreach
循环从最后一个元素开始。我在对象$gridRows
中有一个数组$grid
,目前设置如下:
$grid
gridRows
2
gridCells
1
2
3
3
gridCells
1
2
gridRow 2中有3个gridCell,gridRow 3有2个gridCell。
然而,当我遍历它时,第一个foreach首先进入gridRow 3。它仍然会在gridRow 2上进行迭代,但它是第二次。
$gridRows = $grid->getGridRows();
foreach ($gridRows as $rowKey => $rowValue) {
$gridCells = $rowValue->getGridCells();
foreach ($gridCells as $cellKey => $cellValue) {
// do something
}
}
是什么给出的?我尝试使用sort($grid, SORT_NUMERIC)
,但效果相同。
print_r($ gridRows)的结果:
Array (
[3] => GridRow Object (
[gridCells:GridRow:private] => Array (
[2] => GridCell Object ( ... )
[1] => GridCell Object ( ... )
)
)
[2] => GridRow Object (
[gridCells:GridRow:private] => Array (
[1] => GridCell Object ( ... )
[2] => GridCell Object ( ... )
[3] => GridCell Object ( ... )
)
)
)
答案 0 :(得分:0)
它似乎是一个对象而不是一个数组。使用数字索引数组来维护所需的顺序。