我有一個多維數組,看起來像這樣:數組元素爲空,它不應該是
$orderedList {}
[0] {
["listElemId"] = 1
["listElemPoints"] = 6
}
[1] {
["listElemId"] = 2
["listElemPoints"] = 5
}
[2] {
["listElemId"] = 4
["listElemPoints"] = 14
}
[3] {
["listElemId"] = 3
["listElemPoints"] = 14
}
}
我做的是給「列表中的元素」(即數組的元素根; [0],[1]等)一個名爲['listElemOrderPlace']的新子元素,並根據這些點給它一個放置。
這工作正常,除非涉及具有相同數量的點的列表元素。在這種情況下,我想給他們同樣的位置,(即['listElemOrderPlace']中的相同數字)。這是我需要幫助的地方。
下面的代碼應該工作(我不明白爲什麼它不應該),但有些錯誤。當我回顯最後一個列表元素的點時,它是空的,即使它實際上不是(它存儲在數據庫等等)。唯一應該是空的是循環中的第一輪,因爲$ j指的是-1。
我在做什麼錯?
$j = -1;
for ($i = 0; $i < count($orderedList); $i++) {
echo $orderedList[$i]['listElemPoints']; // 6, 14, 14
echo $orderedList[$j]['listElemPoints']; // Empty all the time (?)
if ($orderedList[$i]['listElemPoints'] = $orderedList[$j]['listElemPoints']) {
$orderedList[$i]['listElemOrderPlace'] = $orderedList[$j]['listElemOrderPlace'];
}
else {
$orderedList[$i]['listElemOrderPlace'] = $i+1;
}
$j += 1;
}
第一種排序是在代碼的前面完成的,但是嘿。非常感謝!真的幫助我:) – holyredbeard