• Время чтения ~1 мин
  • 24.08.2022

Laravel Stats – это пакет, созданный Spatie. чтобы легко отслеживать статистику приложений, такую ​​как заказы, подписки и пользователи, а также их изменение с течением времени.

Этот пакет прост в использовании и позволяет начать работу — вы расширяете класс пакета BaseStats и готовы использовать этот пакет:

use Spatie\Stats\BaseStats;
 
class SubscriptionStats extends BaseStats {}

Далее, всякий раз, когда вы хотите отслеживать статистику, вы можете увеличить или уменьшить статистику:

// execute whenever somebody subscribes
SubscriptionStats::increase();
 
// execute whenever somebody cancels the subscription
SubscriptionStats::decrease();
 
// Set the stat directly
SubscriptionStats::set($count);

После того, как вы собрали статистику, вы можете запросить статистику с помощью этого пакета, используя предоставил StatsQuery API:

$stats = SubscriptionStats::query()
    ->start(now()->subMonths(2))
    ->end(now()->subSecond())
    ->groupByWeek()
    ->get();
 
/*
Example results:
 
[
    [
        'start' => '2020-01-01',
        'end' => '2020-01-08',
        'value' => 102,
        'increments' => 32,
        'decrements' => 20,
        'difference' => 12,
    ],
    [
        'start' => '2020-01-08',
        'end' => '2020-01-15',
        'value' => 114,
        'increments' => 63,
        'decrements' => 30,
        'difference' => 33,
    ],
]
 
*/

Вы можете узнать больше об этом пакете, получить полные инструкции по установке и просмотреть исходный код на GitHub. Автор пакета также написал подробный пост. об этом пакете.

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

Про мене

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

Об авторе CrazyBoy49z
WORK EXPERIENCE
Контакты
Ukraine, Lutsk
+380979856297