php在数组中查找正值和负值的最大值

时间:2014-03-20 10:52:17

标签: php

我有一个数组我想找到正值和负值的最大值。  预期结果为-13.2和7.8

$array = array
(
    [0] => -13.2
    [1] => -14.5
    [2] => -14.3
    [3] => -13.7
    [4] => -13.8
    [5] => -14.6
    [6] => 6.4
    [7] => 6.9
    [8] => 7.2
    [9] => 6.9
    [10] => 7.8
    [11] => 6.9
    [12] => 6.3
    [13] => 7.2
    [14] => 6.9
    [15] => 6.8
)

$maxrl='';
for($i=1,$j=0;$i<=count($array);$i++,$j++)
    {
        if($maxr <= $array[$j])
            {
                if(($maxr < $array[$j]) && ($maxrl != ''))
                    {
                        $maxrl='';
                        $maxrl.="L".$k.",";
                    }
                else
                    {
                        $maxrl.="L".$k.",";
                    }
                $maxr = $max_array[$j];

            }
        $k++;
    }
echo "<tr><td >'.$maxr.'</td><td>'.substr($maxrl,0,-1).'</td><>/tr>";

5 个答案:

答案 0 :(得分:3)

你可以简单地使用max&amp;最小功能,

echo "Max Value:- ".max($array); // Max Value:-  7.8
echo "Min Value:- ".min($array); // Min Value:- -14.6

更新:如果你真的想从负面和正值,

$positive = array_filter($array, function ($v) {
  return $v > 0;
});

$negative = array_filter($array, function ($v) {
  return $v < 0;
});

echo "Max in positive Value:- ".max($positive); // Max in positive Value:-  7.8
echo "Min in negative Value:- ".min($negative); // Max in negative Value:- -13.2

答案 1 :(得分:2)

正面最大值只需

$max = max($array);

最高的最低值有点复杂:

$minArray = array();
foreach ( $array as $val )
    if ( $val < 0 )
       $minArray[] = $val;

$min = max($minArray);

如果我的OP问题是正确的

答案 2 :(得分:1)

PHP专门用于此

maxmin方法
$max = max($array); // 7.8
$min = min($array); // -14.6

答案 3 :(得分:0)

{{1}}

答案 4 :(得分:-2)

只是做:

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

更容易! ;)