- Laravel - Action URL
- Laravel - Dump Server
- Laravel - Pagination Customizations
- Laravel - Artisan Commands
- Laravel - Guest User Gates
- Understanding Release Process
- Laravel - Hashing
- Laravel - Encryption
- Laravel - Artisan Console
- Laravel - Authorization
- Laravel - Authentication
- Laravel - CSRF Protection
- Laravel - Contracts
- Laravel - Facades
- Laravel - Event Handling
- Laravel - Error Handling
- Laravel - Ajax
- Laravel - Sending Email
- Laravel - File Uploading
- Laravel - Validation
- Laravel - Session
- Laravel - Localization
- Laravel - Forms
- Laravel - Errors & Logging
- Laravel - Working With Database
- Laravel - Redirections
- Laravel - Blade Templates
- Laravel - Views
- Laravel - Response
- Laravel - Cookie
- Laravel - Request
- Laravel - Controllers
- Laravel - Namespaces
- Laravel - Middleware
- Laravel - Routing
- Laravel - Configuration
- Laravel - Application Structure
- Laravel - Installation
- Laravel - Overview
- Laravel - Home
Laravel Useful Resources
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Laravel - Cookie
Cookies play an important role while deapng a user’s session on a web apppcation. In this chapter, you will learn about working with cookies in Laravel based web apppcations.
Creating a Cookie
Cookie can be created by global cookie helper of Laravel. It is an instance of SymfonyComponentHttpFoundationCookie. The cookie can be attached to the response using the withCookie() method. Create a response instance of IlluminateHttpResponse class to call the withCookie() method. Cookie generated by the Laravel are encrypted and signed and it can’t be modified or read by the cpent.
Here is a sample code with explanation.
//Create a response instance $response = new IlluminateHttpResponse( Hello World ); //Call the withCookie() method with the response method $response->withCookie(cookie( name , value , $minutes)); //return the response return $response;
Cookie() method will take 3 arguments. First argument is the name of the cookie, second argument is the value of the cookie and the third argument is the duration of the cookie after which the cookie will get deleted automatically.
Cookie can be set forever by using the forever method as shown in the below code.
$response->withCookie(cookie()->forever( name , value ));
Retrieving a Cookie
Once we set the cookie, we can retrieve the cookie by cookie() method. This cookie() method will take only one argument which will be the name of the cookie. The cookie method can be called by using the instance of IlluminateHttpRequest.
Here is a sample code.
//’name’ is the name of the cookie to retrieve the value of $value = $request->cookie( name );
Example
Observe the following example to understand more about Cookies −
Step 1 − Execute the below command to create a controller in which we will manipulate the cookie.
php artisan make:controller CookieController --plain
Step 2 − After successful execution, you will receive the following output −
![CookieController](/laravel/images/cookiecontroller.jpg)
Step 3 − Copy the following code in
app/Http/Controllers/CookieController.php file.
app/Http/Controllers/CookieController.php
<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateHttpResponse; use AppHttpRequests; use AppHttpControllersController; class CookieController extends Controller { pubpc function setCookie(Request $request) { $minutes = 1; $response = new Response( Hello World ); $response->withCookie(cookie( name , virat , $minutes)); return $response; } pubpc function getCookie(Request $request) { $value = $request->cookie( name ); echo $value; } }
Step 4 − Add the following pne in app/Http/routes.php file.
app/Http/routes.php
Route::get( /cookie/set , CookieController@setCookie ); Route::get( /cookie/get , CookieController@getCookie );
Step 5 − Visit the following URL to set the cookie.
http://localhost:8000/cookie/set
Step 6 − The output will appear as shown below. The window appearing in the screenshot is taken from firefox but depending on your browser, cookie can also be checked from the cookie option.
![Hello World](/laravel/images/hello_world.jpg)
Step 7 − Visit the following URL to get the cookie from the above URL.
http://localhost:8000/cookie/get
Step 8 − The output will appear as shown in the following image.
![Virat](/laravel/images/virat.jpg)