首先,您映射该数组以获取这些数字(而不是全部详细信息):
$numbers = array_column($array, 'weight')
然后得到最小和最大:
$min = min($numbers);
$max = max($numbers);
(仅当您没有PHP 5.5或更高版本时)与选项1相同,但要选择值,请使用array_map
:
$numbers = array_map(function($details) {
return $details['Weight'];
}, $array);
选项3。
如果您只需要一个最小值或最大值,则array_reduce()
可能会更快:
$min = array_reduce($array, function($min, $details) {
return min($min, $details['weight']);
}, PHP_INT_MAX);
这会执行更多min()
的操作,但是速度非常快。该PHP_INT_MAX
是具有高启动,并得到越来越低。您可以这样做$max
,但您将从0
或开始-PHP_INT_MAX
。