Formátovanie čísel
formatUsing() prijíma Closure(float): string a pridá do výsledku kľúč formatted bez zmeny surových čísel — graf vykreslí hodnotu, popisok vypíše reťazec:
use Illuminate\Support\Number;
Metrics::value()
->sum(Order::query(), 'total')
->formatUsing(fn (float $value): string => Number::currency($value, 'USD'))
->toArray();
// result.value => 1500.0, result.formatted => "$1,500.00"Trendy a členenia
Pri trendoch a členeniach sa formátovač použije na každý bod a formatted je mapa s rovnakými kľúčmi:
use Illuminate\Support\Number;
Metrics::trend()
->sum(Order::query(), 'total')
->daily()
->range('MTD')
->formatUsing(fn (float $value): string => Number::abbreviate($value))
->toArray();
// result.formatted => ['2024-06-01' => '12K', '2024-06-02' => '9K', ...]
Metrics::partition()
->count(User::query(), 'plan')
->formatUsing(fn (float $value): string => number_format($value).' users')
->toArray();
// result.formatted => ['pro' => '120 users', 'free' => '80 users']- Value a Progress — value sa naformátuje do jedného reťazca formatted.
- Trend — každý interval z trends sa naformátuje do mapy formatted.
- Partition — každá hodnota z partitions sa naformátuje do mapy formatted.
prefix() a suffix() sú samostatné, jednoduchšie prezentačné údaje: prechádzajú obálkou nezmenené a frontend ich umiestni okolo čísla. Pomocníci Number v Laraveli vyžadujú PHP rozšírenie intl.
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 kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
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.