Cache helps your app remember data so it can load faster next time. It saves time by not doing the same work again.
Storing and retrieving cache in Laravel
<?php use Illuminate\Support\Facades\Cache; // Store data in cache Cache::put('key', 'value', $seconds); // Retrieve data from cache $value = Cache::get('key', 'default'); // Store data forever Cache::forever('key', 'value'); // Remove data from cache Cache::forget('key');
Use Cache::put to save data with a time limit in seconds or as a DateTime instance.
Use Cache::get to get data; it returns a default if the key is missing.
<?php Cache::put('username', 'alice', 3600); // Store 'alice' for 1 hour $name = Cache::get('username');
<?php $value = Cache::get('non_existing_key', 'guest');
<?php Cache::forever('site_name', 'My Website'); $name = Cache::get('site_name');
<?php Cache::forget('username'); $name = Cache::get('username', 'not found');
This program shows how to store data temporarily and permanently in cache, retrieve it, and handle expiration and removal.
<?php use Illuminate\Support\Facades\Cache; // Store a value in cache for 10 seconds Cache::put('greeting', 'Hello, Laravel!', 10); // Retrieve and print the cached value echo "Cached greeting: " . Cache::get('greeting', 'No greeting found') . "\n"; // Wait 11 seconds to let cache expire sleep(11); // Try to get the expired cache echo "After expiration: " . Cache::get('greeting', 'Cache expired') . "\n"; // Store a value forever Cache::forever('welcome', 'Welcome to the site!'); // Retrieve and print the forever cached value echo "Forever cached message: " . Cache::get('welcome') . "\n"; // Remove the forever cached value Cache::forget('welcome'); // Try to get the removed cache echo "After removal: " . Cache::get('welcome', 'No message found') . "\n";
Cache::put has time complexity O(1) for storing data.
Cache::get also works in O(1) time to retrieve data.
Common mistake: forgetting to set expiration time, which uses the default TTL from config.
Use cache for data that is expensive to get or compute but changes occasionally.
Cache stores data to speed up your app by avoiding repeated work.
Use Cache::put to save with expiration, Cache::get to retrieve safely with default.
Use Cache::forever for permanent storage and Cache::forget to remove data.