美文网首页
data for echarts

data for echarts

作者: answer6 | 来源:发表于2018-10-24 17:23 被阅读0次

    场景是提供 api 给前端做数据统计展示, 用的工具是 echarts , 要求就是在某个日期没有数据的时候不能留空。实现方式蛮多的,新建时间表等等... 这里介绍一个 PHP 处理的方法。


    • 首先拿到我们需要展示的数据 $sold_trend 【这个参数我在 sql 中对时间做了 group by 的分组处理了 注意,下面只是对应上天数的处理】
    • 获取日期,【一般来说近七天、近三十天的比较多。多少天不影响】
    $day   =  '你需要统计的日期天数';
     for ($i = $day - 1; 0 <= $i; $i--) {
                $result[] = date('Y-m-d', strtotime('-' . $i . ' day'));
                $sold_total[] = 0;    //展示字段 1
                $sold_number[] = 0;   //展示字段 2
                $sold_pro_total[] = 0;  //展示字段 3
            }
    
    • 拿到数据,循环统计
     array_walk($sold_trend, function ($value, $key) use ($result, &$sold_total,&$sold_number,&$sold_pro_total) {
               //注意这里 array_search 的查找规则
                $index                  =   array_search($value['ymd'],$result);
                $sold_total[$index]     =   $value['order_total_sum'];
                $sold_number[$index]    =   $value['sold_number_count'];
                $sold_pro_total[$index] =   $value['order_pro_total_sum'];
            });
    
    • the end
     $data = [
            'day' => $result,
            'sold_total' => $sold_total,
            'sold_number' => $sold_number,
            'sold_pro_total' => $sold_pro_total
            ];
    

    相关文章

      网友评论

          本文标题:data for echarts

          本文链接:https://www.haomeiwen.com/subject/ctyxtqtx.html