我有一个像下面这样的php数组,
$array = array(
array(
'mark' => 10,
'name' => 'name 1',
),
array(
'mark' => 15,
'name' => 'name 2',
),
-------------------
-----------------
);
我需要获得最小标记的行。
我可以像贝娄那样得到最低分,
$numbers = array_map(function($array) {
return $details['mark'];
}, $array);
$min = min($numbers);
但我不知道如何获得整行。
答案 0 :(得分:3)
uasort($array, function($a, $b) {
if ($a['mark'] == $b['mark']) {
return 0;
}
return ($a['mark'] < $b['mark']) ? -1 : 1;
});
$min = current($array);
$max = end($array);
答案 1 :(得分:0)
为什么在PHP已经拥有你需要的东西时使用如此长的代码呢?
使用这个单行。
紧凑(短),快(因为我们首先收集了列),本机(它是内置的):
class TestStuff(unittest.TestCase):
def setUp(self):
self.app_context = app.app_context()
self.app_context.push()
db.create_all() # TODO remove
def tearDown(self):
db.session.remove()
db.drop_all() # TODO remove
self.app_context.pop()
def test_lookup(self):
dostuff()
答案 2 :(得分:-2)
试试这个:
$array = array(
array(
'mark' => 10,
'name' => 'name 1',
),
array(
'mark' => 15,
'name' => 'name 2',
)
);
$numbers = array_map(function($array) {
return $array['mark'];
}, $array);
$min = min($numbers);