Метод decrement
Метод decrement класса Cache применяется для атомарного уменьшения числового значения кеша. Первым параметром передаётся ключ, вторым - количество, на которое нужно уменьшить значение (по умолчанию 1). Если ключ не существует, метод создаёт его со значением 0 и затем применяет уменьшение. Возвращает новое значение после уменьшения.
Синтаксис
<?php
use Illuminate\Support\Facades\Cache;
Cache::decrement($key, $amount = 1);
?>
Пример
Давайте поместим в кеш значение и уменьшим его на 1:
<?php
use Illuminate\Support\Facades\Cache;
Cache::put('counter', 10, 60);
$res = Cache::decrement('counter');
echo $res;
?>
Результат выполнения кода:
"9"
Пример
Давайте уменьшим значение на произвольное количество, например на 5:
<?php
use Illuminate\Support\Facades\Cache;
Cache::put('score', 100, 60);
$res = Cache::decrement('score', 5);
echo $res;
?>
Результат выполнения кода:
"95"
Пример
Давайте попробуем уменьшить несуществующий ключ:
<?php
use Illuminate\Support\Facades\Cache;
$res = Cache::decrement('nonexistent');
echo $res;
?>
Результат выполнения кода:
"-1"
Как видим, метод создал ключ со значением 0, а затем уменьшил его до -1.