0
0
Laravelframework~5 mins

Cookie handling in Laravel

Choose your learning style9 modes available
Introduction

Cookies help websites remember you. Laravel makes it easy to set, get, and delete cookies.

Remember user preferences like language or theme.
Keep users logged in between visits.
Track simple user actions for better experience.
Store temporary data without using a database.
Syntax
Laravel
use Illuminate\Support\Facades\Cookie;

// Set a cookie
Cookie::queue('name', 'value', $minutes);

// Get a cookie
$value = Cookie::get('name');

// Delete a cookie
Cookie::queue(Cookie::forget('name'));

Use Cookie::queue() to add cookies to the response.

Minutes is how long the cookie lasts before it expires.

Examples
Sets a cookie named 'user' with value 'Alice' that lasts 60 minutes.
Laravel
Cookie::queue('user', 'Alice', 60);
Retrieves the value of the 'user' cookie.
Laravel
$user = Cookie::get('user');
Deletes the 'user' cookie by setting it to expire immediately.
Laravel
Cookie::queue(Cookie::forget('user'));
Sample Program

This controller has three methods: one to set a cookie named 'color' with value 'blue' for 30 minutes, one to get and show the cookie value, and one to delete the cookie.

Laravel
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Cookie;

class CookieController extends Controller
{
    public function setCookie()
    {
        Cookie::queue('color', 'blue', 30);
        return response('Cookie has been set');
    }

    public function getCookie(Request $request)
    {
        $color = Cookie::get('color', 'not set');
        return response("Cookie value: $color");
    }

    public function deleteCookie()
    {
        Cookie::queue(Cookie::forget('color'));
        return response('Cookie has been deleted');
    }
}
OutputSuccess
Important Notes

Cookies are sent with HTTP responses, so use Cookie::queue() inside controller methods.

Always consider user privacy and security when using cookies.

Summary

Cookies store small data on the user's browser.

Laravel uses Cookie::queue() to set or delete cookies.

Use Cookie::get() to read cookie values.