【发布时间】:2021-05-15 17:18:30
【问题描述】:
所以,我得到的数组看起来像这样:
[65]=>
array(2) {
[0]=>
array(2) {
["p"]=>
float(234)
["sp"]=>
float(234)
}
[1]=>
array(2) {
["p"]=>
float(53)
["sp"]=>
float(5)
}
[2]...
[3]...
}
这个想法是遍历key 65数组的0-N个值中的每一个,只保留一个具有最小“p”的值,其他的应该被删除/过滤掉。
这应该在 PHP 中完成。 有人知道吗?
我尝试过这样的事情:
$array = array_filter($array, function ($value, $key) use ($a) {
return $a['p'] <= $value['p'];
}, ARRAY_FILTER_USE_BOTH);
其中 $value 是 65 个键控数组中的 1 个元素,$a 是当前动态添加的对。因此,当它添加时,我会检查现有元素,如果它最低,它应该保留,而其他元素会立即被过滤掉,但如果它更高,它应该自动被过滤掉。
谢谢!
【问题讨论】:
标签: php arrays multidimensional-array key