簡體   English   中英

從PHP中的多維數組獲取最小和最大組值

[英]Get min and max group value from multi dimensional array in php

我有這樣的多維數組

(
    [0] => Array
        (
            [date] => 2014-11-05
            [price] => 40800.00
        )

    [1] => Array
        (
            [date] => 2014-11-05
            [price] => 42699.00
        )

    [2] => Array
        (
            [date] => 2014-11-07
            [price] => 43500.00
        )

)

我如何獲得價格日期的價值,其中價格最低價格最高,在php中?

array_reduce的最大值:

$result = array_reduce($arr, function($memo, $el) {
  if($memo[0] < $el['price']) {
    $memo = array($el['price'], $el);
  }
  return $memo;
}, array(0, null));

echo $result[1]; // contains the maximal element

我想很清楚如何獲得最小值。

另一方面,您可以數組進行排序 ,然后獲取第一個和最后一個值:

usort($arr, function($a, $b) { 
  return ($a['price'] < $b['price']) ? 
      -1 : (int) !($a['price'] === $b['price']); 
});

現在,您已按價格數組排序。

     $arr=array(
      array
            (
                'date' => 2014-11-05,
                'price' => 40800.00
            ),

         array
            (
                'date' => 2014-11-05,
                'price' => 42699.00
            )
    ,
         array
            (
                'date' => 2014-11-07,
                'price' => 43500.00
            )

    );
        $temp=0;
        foreach($arr as $person) {
            $p=$person['price'];
            if($temp<$p)
              $temp=$p;

        }
        echo 'Max price: '. $temp;

         $t=$arr[0]['price'];
        foreach($arr as $person) {
           $p=$person['price'];
             if($t>$p)
             $t=$p;

           }
echo "Min price: ".$t;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM