Метод missing
Метод missing класса Cache предназначен для проверки
отсутствия значения в кеше. В отличие от метода has,
который проверяет наличие, missing возвращает
противоположный результат. Метод принимает один обязательный
параметр - ключ, по которому выполняется проверка.
Синтаксис
<?php
use Illuminate\Support\Facades\Cache;
Cache::missing($key);
?>
Пример
Проверим отсутствие значения по ключу 'user':
<?php
use Illuminate\Support\Facades\Cache;
$res = Cache::missing('user');
echo $res;
?>
Результат выполнения кода:
"1"
Пример
Сначала добавим значение в кеш, а затем проверим его отсутствие:
<?php
use Illuminate\Support\Facades\Cache;
Cache::put('article', 'Laravel cache', 3600);
$res = Cache::missing('article');
echo $res;
?>
Результат выполнения кода:
""
Метод вернул пустую строку, так как значение присутствует в кеше (false приводится к пустой строке при выводе).
Пример
Используем метод missing в условной конструкции
для выполнения действия, если ключ отсутствует:
<?php
use Illuminate\Support\Facades\Cache;
if (Cache::missing('categories')) {
Cache::put('categories', ['a', 'b', 'c', 'd', 'e'], 3600);
echo 'Categories added to cache';
} else {
echo 'Categories already exist';
}
?>
Результат выполнения кода:
"Categories added to cache"