3

我有一个这样的数组:

$array = array(
    array('id' => 1, 'quantity' => 10),
    array('id' => 2, 'quantity' => 25),
    array('id' => 3, 'quantity' => 38),
    ...
);

我想找到包含最少数量的数组。我怎么能用两行代码简单地做到这一点?!(我更喜欢使用 PHP 函数)

此外,如果变量是一个对象,它有什么区别吗?!

4

2 回答 2

5

像这样:

usort($array,function($a,$b) {return $a['quantity']-$b['quantity'];});
return $array[0];

如果需要,使用创建原始数组的副本$copy = array_slice($array,0);

于 2012-07-14T13:35:17.480 回答
-1

对于最小值:

$min = min(array_map("array_pop",$array));
print_r($min);

对于密钥:

$min = array_keys(array_map("array_pop",$array), min(array_map("array_pop",$array)));
print_r($min[0]);
于 2012-07-14T13:59:34.070 回答