如何在JSON中打印max()值

时间:2018-06-10 09:18:16

标签: php laravel

如何在3个函数的JSON形式结果中打印最高值。

控制器:

 class TimeFrameStatisticsController extends Controller

{
        public function one()
        {
            return 3;
        }
        public function two()
        {
            return 1;
        }
        public function three()
        {
            return 4;
        }

        //FUNCTION FOR 4rth to get HIGHEST value

        public function HighestValue() {

            $func_names = ['three','one','two'];

            // Call each method and store result.
            foreach($func_names as $name) {
                $results[$name] = $name();
            }

            $max       = max($results);
            $max_funcs = array_keys($results, $max);

            return response()->json($max_funcs);
           }
}
  

API的public function HighestValue() OUTPUT出错:致电   未定义的功能 public function one()

其他3个功能是API的结果:

enter image description here

我的问题是我该怎么办?我应该创建Object以及如何创建?

1 个答案:

答案 0 :(得分:0)

这个功能给了我3种不同的最高价值的完美结果。

public function allCmp()
{

    $firstTradeValue = $this->one();
    $lastTradeValue = $this->two();
    $otherTradeValue = $this->three();

//Set all in one array
    $allTrades = array("firstHourTrades" => $firstTradeValue, "lastHourTrades" => $lastTradeValue, "otherHoursTrades" => $otherTradeValue );

//Get the highest value
    $highestValue = max($allTrades);

//Get the corresponding key
    $key = array_search($highestValue, $allTrades);


    return response()->json($key);

}