---
title: "Porovnanie období — Metrics for Laravel | Roundly"
description: "Zobrazte zmenu oproti predchádzajúcemu obdobiu alebo porovnajte s ľubovoľným rozsahom cez compareTo() — pre metriky hodnoty a progresu."
url: https://roundly-consulting.com/sk/open-source/navody/metrics-for-laravel/porovnanie-obdobi
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Metrics for Laravel](https://roundly-consulting.com/sk/open-source/navody/metrics-for-laravel.md)

# Porovnanie období

Metriky Value a Progress vedia vypočítať zmenu medzi obdobiami. withChangeAgainstPreviousPeriod() porovnáva s bezprostredne predchádzajúcim oknom:

```php
use App\Models\User;
use RoundlyConsulting\Metrics\Enums\Period;
use RoundlyConsulting\Metrics\Facades\Metrics;

Metrics::value()
    ->count(User::query())
    ->range(Period::Today)
    ->withChangeAgainstPreviousPeriod()   // vs. yesterday
    ->toArray();
// result => ['value' => 42.0, 'previous' => 30.0, 'change' => ['percentage' => 40.0, 'is_increase' => true]]
```

## Predchádzajúce okno

| Obdobie | Porovnáva sa s |
| --- | --- |
| `7 … 365` | N dní pred aktuálnym oknom |
| `TODAY, YESTERDAY` | Predchádzajúci deň |
| `WTD, MTD, QTD, YTD` | Rovnako dlhý úsek predchádzajúceho týždňa, mesiaca, štvrťroka alebo roka |
| `THIS_WEEK … THIS_YEAR` | Celý predchádzajúci týždeň, mesiac, štvrťrok alebo rok |
| `LAST_WEEK … LAST_YEAR` | Obdobie pred ním |
| `CUSTOM` | Okno presne rovnakej dĺžky, ktoré končí sekundu pred jeho začiatkom — pri koncovom dátume bez času celé dni |
| `ALL` | Bez porovnania |

Obdobie ALL nemá ohraničené okno, preto sa vráti len hodnota.

## Porovnanie s ľubovoľným rozsahom

compareTo() porovná s ľubovoľným obdobím — a zároveň zapne withChangeAgainstPreviousPeriod(). Porovnávacie obdobie sa vyhodnotí tak, ako je, v časovom pásme metriky:

```php
use RoundlyConsulting\Metrics\Enums\Period;

Metrics::value()
    ->count(Order::query())
    ->range(Period::ThisMonth)
    ->compareTo(Period::LastYear)   // vs. the whole previous calendar year
    ->toArray();

// The same month a year ago — an explicit custom window
Metrics::value()
    ->count(Order::query())
    ->range(Period::ThisMonth)
    ->compareTo(Period::Custom, '2025-09-01 00:00:00', '2025-09-30 23:59:59')
    ->toArray();
```

## Zmena pri progrese

Metriky Progress pridajú progres predchádzajúcej hodnoty a blok change s percentuálnou zmenou a rozdielmi v hodnote aj v percentuálnych bodoch progresu — ProgressResult je zároveň ValueResult, takže change() vráti percento:

```php
Metrics::progress()
    ->sum(Order::query(), 'total')
    ->target(10000)
    ->range(Period::MonthToDate)
    ->withChangeAgainstPreviousPeriod()
    ->toArray();
// result => [
//     'value' => 8200.0, 'progress' => 82.0,
//     'previous' => 6500.0, 'previous_progress' => 65.0,
//     'target' => 10000.0, 'avoid' => false,
//     'change' => ['percentage' => 26.0, 'is_increase' => true, 'progress' => 17.0, 'value' => 1700.0],
// ]
```

Percento zmeny sa počíta voči veľkosti predchádzajúcej hodnoty, takže jeho znamienko vždy zodpovedá smeru zmeny: z -100 na -50 je to +50. Pri nulovej predchádzajúcej hodnote je 100 pri raste, -100 pri poklese a 0, ak hodnota zostane nulová. change.is\_increase je true, keď aktuálna hodnota prevyšuje predchádzajúcu. Bez porovnania sú previous, change.percentage aj change.is\_increase null — pri metrike progresu každé pole bloku change.

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/metrics-for-laravel.md)
