---
title: "Desatinné kredity a zobrazenie — Credits for Laravel | Roundly"
description: "Ukladajte desatinné kredity ako celé najmenšie jednotky so škálou a zobrazujte ich ako presné desatinné reťazce bez lokalizácie."
url: https://roundly-consulting.com/sk/open-source/navody/credits-for-laravel/zobrazenie-zostatkov
language: sk
---

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

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

# Desatinné kredity a zobrazenie

Kredity sa ukladajú ako celé čísla, aby nevznikali odchýlky pohyblivej čiarky. Desatinné kredity reprezentujete tak, že uloženú hodnotu beriete ako najmenšie jednotky a scale nastavíte na počet desatinných miest — pri scale = 2 znamená uložených 150 hodnotu 1.50 kreditu. Ukladajte a odpisujte najmenšie jednotky; úložisko ostáva bigInteger a základná matematika sa nemení.

## Pomocníky zobrazenia

Credits::for($user)->format() naformátuje zostatok jednej skupiny a Credits::format() ľubovoľnú celočíselnú sumu. Obe vracajú čistý desatinný reťazec bez lokalizácie — bez oddeľovačov tisícov; ak ich potrebujete, obaľte výsledok pomocníkom Number z Laravelu:

```php
config(['credits.scale' => 2]);

Credits::for($user)->format();                        // the default bucket's balance, e.g. "1234.50"
Credits::for($user)->bucket('promotional')->format(scale: 0, rounding: \RoundingMode::HalfEven);

Credits::format(123450);                              // "1234.50" — any integer amount, no model needed
```

Na modeli sú ich podobou z traitu displayCreditsBalance() a displayCredits():

```php
config(['credits.scale' => 2]);

$user->modifyCredits(123450);            // stores 123450 minor units

$user->displayCreditsBalance();          // "1234.50"  (a single bucket's balance)
$user->displayCredits(123450);           // "1234.50"  (format any integer amount)
$user->displayCredits(-123450);          // "-1234.50"
$user->displayCredits(5);                // "0.05"
```

## Prepísanie škály a zaokrúhľovania

Všetky pomocníky prijímajú voliteľnú škálu pre jedno volanie (počet zobrazených desatinných miest) a režim zaokrúhľovania. Ak je požadovaná škála menšia ako uložená, odrezané číslice sa zaokrúhlia raz podľa režimu — natívneho \\RoundingMode, predvolene config('credits.rounding'). displayCreditsBalance() prijíma aj okamih:

```php
$user->displayCredits(123450, scale: 0);                                          // "1235"
$user->displayCredits(123450, scale: 0, rounding: \RoundingMode::HalfTowardsZero); // "1234"
$user->displayCredits(1250, scale: 0, rounding: \RoundingMode::HalfEven);          // "12"
$user->displayCredits(1350, scale: 0, rounding: \RoundingMode::HalfEven);          // "14"

$user->displayCreditsBalance(bucket: 'promotional', scale: 0, at: now()->subWeek());
```

Všetky režimy zaokrúhľovania podľa názvu v konfigurácii:

| credits.rounding | Argument rounding: | Správanie |
| --- | --- | --- |
| `half_away_from_zero` | \\RoundingMode::HalfAwayFromZero | Polovice od nuly (predvolené). |
| `half_towards_zero` | \\RoundingMode::HalfTowardsZero | Polovice k nule. |
| `half_even` | \\RoundingMode::HalfEven | Polovice k najbližšej párnej číslici — bankárske zaokrúhľovanie. |
| `half_odd` | \\RoundingMode::HalfOdd | Polovice k najbližšej nepárnej číslici. |
| `towards_zero` | \\RoundingMode::TowardsZero | Vždy oreže smerom k nule. |
| `away_from_zero` | \\RoundingMode::AwayFromZero | Vždy zaokrúhli od nuly. |
| `positive_infinity` | \\RoundingMode::PositiveInfinity | Vždy nahor (strop). |
| `negative_infinity` | \\RoundingMode::NegativeInfinity | Vždy nadol (podlaha). |

## Presne pri akejkoľvek veľkosti

Škála zobrazenia väčšia ako uložená sa vykreslí presne — prepočet beží v money-for-laravel na celočíselných reťazcoch s ľubovoľnou presnosťou, takže ani PHP\_INT\_MAX sa nikdy nezmení na float:

```php
config(['credits.scale' => 0]);

$user->displayCredits(PHP_INT_MAX, scale: 6); // "9223372036854775807.000000"
```

Škála zobrazenia je obmedzená na 36 desatinných miest; zápornú škálu balík berie ako nulu.

## Zobrazenie súčtov

Samostatné metódy na zobrazenie súčtov neexistujú — poskladajte ich zo súčtov:

```php
$user->displayCredits($user->totalCreditsBalance());                               // formatted grand total
$user->displayCredits($user->creditsBalanceForBuckets(['promotional', 'purchased']));
```

## 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/credits-for-laravel.md)
