How to Store Data in Cache in Laravel?
if you are work with large application which depend on large query and required large number of record at that time your application performence littel bit down. that problem overcome with laravel Cache functionality.
Laravel Cache provide to you store your large query in cache so your application performence improve.
first of all you must write
Here is an example using Laravelβs Fluent Query Builder:
$users = DB::table('order')
->orderBy('price', 'desc')
->take(10)
->remember(60)
->get();
Of course, we can do the same thing using laravel Eloquent:
$users = Order::orderBy('price', 'desc')
->take(10)
->remember(60)
->get();
But, it's work fine with very simple database query
if you have work with more complex database query you need to use cache this way.
1.)Cache all records.
$orderTable = Cache::remember('orderTable', 60, function()
{
return DB::table('order')
->select(DB::raw(
"SOME COMPLEX JOINS ETC.."
))->get();
});
Here 'orderTable' is a cache variable you can use this when you get all records from the cache like that,
2.)Get records from Cache
$data = Cache::get('orderTable');
3.)remove Cache records from the Cache memory. it must be required when you insert new record other wise you want to update any records.
Cache::forget('orderTable');
I hope it can help you...