Метод flush
Метод flush класса Cache удаляет все элементы из текущего хранилища кеша. Он не принимает никаких параметров и возвращает true при успешном выполнении. Важно отметить, что данный метод полностью очищает хранилище, поэтому его следует использовать с осторожностью в рабочем окружении.
Синтаксис
<?php
use Illuminate\Support\Facades\Cache;
Cache::flush();
?>
Пример
Давайте добавим несколько элементов в кеш, а затем полностью очистим его:
<?php
use Illuminate\Support\Facades\Cache;
Cache::put('user', 'John Doe', 60);
Cache::put('article', 'Laravel tips', 60);
Cache::put('category', 'Programming', 60);
$res = Cache::flush();
echo $res ? 'Cache cleared' : 'Error clearing cache';
?>
Результат выполнения кода:
"Cache cleared"
Пример
Проверим, действительно ли кеш был очищен после вызова flush:
<?php
use Illuminate\Support\Facades\Cache;
Cache::put('key', 'value', 60);
Cache::flush();
if (Cache::has('key')) {
echo 'Key exists in cache';
} else {
echo 'Key does not exist in cache';
}
?>
Результат выполнения кода:
"Key does not exist in cache"
Пример
Пример использования flush в контексте контроллера Laravel:
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Cache;
class CacheController extends Controller
{
public function clearCache()
{
$res = Cache::flush();
if ($res) {
return response()->json(['message' => 'Cache successfully cleared']);
}
return response()->json(['message' => 'Failed to clear cache'], 500);
}
}
?>
Результат выполнения кода при успешной очистке:
{"message": "Cache successfully cleared"}