【问题标题】:min and max value from php arrayphp数组的最小值和最大值
【发布时间】:2012-02-11 08:58:35
【问题描述】:
$array = [0,1,2,3,4,5,6];
$min = min($array);
$max= max($array);  
  • 我希望最小值为 1,最大值为 6,我不想将 0 视为最小值 php 数组。

【问题讨论】:

  • 您必须从数组中删除 0。我认为没有其他方法。
  • 最简单的解决方案:在调用min之前从数组中删除0。其他解决方案包括编写您自己的 min 自定义版本。

标签: php arrays


【解决方案1】:

使用array_filter 过滤数组中的零

$a = array(0,1,2,3,4,5,6);

$a = array_filter($a);

$min = min($a);
$max = max($a);

【讨论】:

  • 数组过滤器不用这样的功能就可以了
  • 确实有效,但 array_filter 已经过滤掉了 0,因为它被转换为布尔值 false。所以自定义函数应该不是必需的。
  • 很好的答案 +1,但我认为如果将来他想更改限制以将 min 设为 2,或者其他什么。
  • @Márcio 到时候,array_filter 仍然是正确答案
【解决方案2】:

array_shift 表示 0,array_pop 表示最后

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-16
    • 2018-07-04
    • 1970-01-01
    • 1970-01-01
    • 2017-02-13
    • 2016-09-10
    • 2021-07-31
    • 2021-09-15
    相关资源
    最近更新 更多