美文网首页
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