php怎么去掉最大最小值

worktile 其他 119

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    要去掉PHP数组中的最大和最小值,可以按照以下步骤进行操作:

    1. 使用max()函数和min()函数找到数组中的最大和最小值。这两个函数分别返回数组中的最大和最小值。
    “`
    $maxValue = max($array);
    $minValue = min($array);
    “`

    2. 使用array_search()函数找到最大和最小值在数组中的索引。这个函数返回指定值在数组中首次出现的位置。
    “`
    $maxIndex = array_search($maxValue, $array);
    $minIndex = array_search($minValue, $array);
    “`

    3. 使用unset()函数删除最大和最小值的索引对应的元素。
    “`
    unset($array[$maxIndex]);
    unset($array[$minIndex]);
    “`

    4. 如果需要重新索引数组,可以使用array_values()函数进行重新索引。
    “`
    $array = array_values($array);
    “`

    完整的代码示例:
    “`
    $array = [1, 3, 5, 2, 4]; // 示例数组

    $maxValue = max($array);
    $minValue = min($array);

    $maxIndex = array_search($maxValue, $array);
    $minIndex = array_search($minValue, $array);

    unset($array[$maxIndex]);
    unset($array[$minIndex]);

    $array = array_values($array);
    “`

    通过以上步骤,你可以去掉PHP数组中的最大和最小值,得到一个新的不包含最大和最小值的数组。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在 PHP 中,可以使用以下方法来去掉数组中的最大值和最小值。

    1. 使用 `max()` 和 `min()` 函数找到数组中的最大值和最小值。

    “`php
    $maxValue = max($array);
    $minValue = min($array);
    “`

    2. 使用 `array_search()` 函数找到数组中最大值和最小值的索引。

    “`php
    $maxKey = array_search(max($array), $array);
    $minKey = array_search(min($array), $array);
    “`

    3. 使用 `unset()` 函数从数组中删除最大值和最小值。

    “`php
    unset($array[$maxKey]);
    unset($array[$minKey]);
    “`

    4. 使用 `array_diff()` 函数创建一个不包含最大值和最小值的新数组。

    “`php
    $newArray = array_diff($array, [$maxValue, $minValue]);
    “`

    5. 使用循环和条件语句将最大值和最小值从数组中移除。

    “`php
    foreach ($array as $key => $value) {
    if ($value == $maxValue || $value == $minValue) {
    unset($array[$key]);
    }
    }
    “`

    这些方法可以根据你的需要选择其中一种或多种来去掉数组中的最大值和最小值。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在PHP中,可以使用以下几种方法来去掉数组中的最大值和最小值:

    方法一:使用array_pop()和array_shift()函数
    “`
    $numbers = [1, 3, 5, 2, 4]; // 原始数组
    $max = max($numbers); // 获取最大值
    $min = min($numbers); // 获取最小值

    $key_max = array_search($max, $numbers); // 查找最大值的键名
    $key_min = array_search($min, $numbers); // 查找最小值的键名

    array_splice($numbers, $key_max, 1); // 通过键名删除最大值
    array_splice($numbers, $key_min, 1); // 通过键名删除最小值

    print_r($numbers); // 输出删除最大值和最小值后的数组
    “`

    方法二:使用unset()函数和array_search()函数
    “`
    $numbers = [1, 3, 5, 2, 4]; // 原始数组
    $max = max($numbers); // 获取最大值
    $min = min($numbers); // 获取最小值

    unset($numbers[array_search($max, $numbers)]); // 删除最大值
    unset($numbers[array_search($min, $numbers)]); // 删除最小值

    print_r($numbers); // 输出删除最大值和最小值后的数组
    “`

    方法三:使用array_filter()函数和匿名函数
    “`
    $numbers = [1, 3, 5, 2, 4]; // 原始数组
    $max = max($numbers); // 获取最大值
    $min = min($numbers); // 获取最小值

    $filtered_array = array_filter($numbers, function($value) use ($max, $min) {
    return ($value != $max && $value != $min); // 过滤出不等于最大值和最小值的元素
    });

    print_r($filtered_array); // 输出删除最大值和最小值后的数组
    “`

    方法四:使用foreach循环和条件判断
    “`
    $numbers = [1, 3, 5, 2, 4]; // 原始数组
    $max = max($numbers); // 获取最大值
    $min = min($numbers); // 获取最小值

    foreach ($numbers as $key => $value) {
    if ($value == $max || $value == $min) {
    unset($numbers[$key]); // 删除最大值和最小值
    }
    }

    print_r($numbers); // 输出删除最大值和最小值后的数组
    “`

    以上是四种常见的方法,根据实际情况选择适合的方法来去掉数组中的最大值和最小值。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部