Кеширование (Cache)

Кеширование — сохранение часто используемых данных.

Например, чтобы не делать каждый раз выборку разделов из базы данных, можно разделы сохранять в кеше. Это позволяет увеличить скорость работы сайта, т.к. данные не будут выбираться на каждой странице, а будут использоваться сохранённые в кеше.

Код ниже создаёт кеш «categories» на 5 минут.

use Illuminate\Support\Facades\Cache;
// …

if (Cache::has('categories')) {
    $data = Cache::get('categories');
} else {
    $seconds = 300;
    $data = Cache::remember('categories', $seconds, function() {
        return Categories::all();
    });
}

Настройки кеширования указываются в файле config/cache.php (можно оставить настройки по умолчанию).

Удаление кеша

Кеш удаляется через методы Cache::forget() и Cache::flush().

// удалить кеш 'categories'
Cache::forget('categories');

// удалить весь кеш
Cache::flush();

Также можно удалить кеш через консоль.

php artisan cache:clear

В качестве кеширования рекомендуется использовать Memcached или Redis.