我有一个mySQL查询,它转储到一个数组中,进行排序然后显示,并且完美无缺。
我的问题是我想更新这些值,重新排序并显示。我已经能够更新这些值,但它在for循环中是相同的,所以它不会重新排序。然后我关闭循环并重新排序,但它不保存我在第一个循环中所做的更新。非常感谢帮助。
foreach ($arr as $mks){
if ($mks['Column1']==$Var) {$mks['Column2'] = $mks['Column2'] + 1;
}
我的排序代码
foreach ($arr as $mks){
echo $mks['Column1'] . ", " . $mks['Column2'] . "<br>";
}
如何才能将其重新保存到我的阵列中?!我早上大部分时间都试过谷歌搜索,但却导致沮丧。
答案 0 :(得分:0)
我认为这就是你所需要的:
foreach ($arr as $key => $mks){
if ($mks[$key] == $Var) {
$arr[$key] = $mks+1;
}
}
现在,$arr
将包含已修改的数组,您可以根据需要进一步使用/修改它。
答案 1 :(得分:0)
我没有看到任何“排序代码”,但您可以尝试使用引用“&amp;”而不是在你的foreach(s)中复制vars:
foreach($arr as & $mks){
...
}
而不是复制你的单元格,它将为你提供一个参考,并且对其进行的每个修改都将保存在数组中。
答案 2 :(得分:0)
尝试更改像这样的数组
foreach ($arr as $key => $mks){
if ($mks['Column1']==$Var) {$arr[$key]['Column2'] = $mks['Column2'] + 1;
}