laravel实现各时间段数量统计

Posted willem_chen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel实现各时间段数量统计相关的知识,希望对你有一定的参考价值。

laravel实现各时间段数量统计、方便直接使用。

因项目中用到了图表之类的信息,需要获取到很多时间的数据动态,刚开始我都是自己换算时间来计算,后来 看到手册中有更简单的方法,自己总结了一下通用的时间段统计(今天、昨天、上周、本周、上月、本月、上年、本年)。

use Carbon\\Carbon;
 
public function getNumber()
{
        $data = [];
 
        #今天数据
        $data['customer_today'] = Customer::where('customer_type', 1)->where('created_at', Carbon::today())->count();
        #昨天数据
        $data['customer_yesterday'] = Customer::where('customer_type', 1)->where('created_at', Carbon::yesterday())->count();
 
        // 本周数据
        $this_week = [Carbon::now()->startOfWeek(), Carbon::now()->endOfWeek()];
        $data['customer_this_week'] = Customer::where('customer_type', 1)->whereBetween('created_at', $this_week)->count();
 
        // 上周数据
        $last_week = [Carbon::now()->startOfWeek()->subWeek(), Carbon::now()->endOfWeek()->subWeek()];
        $data['customer_last_week'] = Customer::where('customer_type', 1)->whereBetween('created_at', $last_week)->count();
 
        // 本月数据
        $data['customer_this_month'] = Customer::where('customer_type', 1)->whereMonth('created_at', Carbon::now()->month)->count();
 
        // 上月数据
        $data['customer_last_month'] = Customer::where('customer_type', 1)->whereMonth('created_at', Carbon::now()->subMonth()->month)->count();
 
        // 本年数据
        $data['customer_this_year'] = Customer::where('customer_type', 1)->whereYear('created_at', Carbon::now()->year)->count();
 
       
        return $data;
}

以上是关于laravel实现各时间段数量统计的主要内容,如果未能解决你的问题,请参考以下文章

Laravel统计Mysql 单个字段不同值的数量

Laravel统计Mysql 单个字段不同值的数量

laravel中如何统计数据的数量

laravel怎么统计数据库中相同字段的数量

laravel连接两张表查询如何只要某个字段和这个字段的统计集合

为啥尽管源代码没有变化,但从一个系统到另一个系统的片段数量却有很大差异?