Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

123456789101112131415161718192021222324
  1. <?php
  2. namespace App\Casts;
  3. use Illuminate\Contracts\Database\Eloquent\CastsAttributes;
  4. class RateCast implements CastsAttributes
  5. {
  6. private const SCALE = 8;
  7. public function get($model, string $key, $value, array $attributes): float
  8. {
  9. $floatValue = $value / (10 ** self::SCALE);
  10. $strValue = rtrim(rtrim(number_format($floatValue, self::SCALE, '.', ''), '0'), '.');
  11. return (float) $strValue;
  12. }
  13. public function set($model, string $key, $value, array $attributes): int
  14. {
  15. return (int) round($value * (10 ** self::SCALE));
  16. }
  17. }