How to use Session variable in Laravel? . The Complete Laravel Developer Course 2023 [Videos].

Sessions are used to store information about the user across the requests. Laravel provides various drivers like file, cookie, apc, array, Memcached, Redis, and database to handle session data. By default, file driver is used because it is lightweight. Session can be configured in the file stored at config/session.php.

Accessing Session Data

To access the session data, we need an instance of session which can be accessed via HTTP request. After getting the instance, we can use the get() method, which will take one argument, “key”, to get the session data.

$value = $request->session()->get("key");

You can use all() method to get all session data instead of get() method.

Storing Session Data

Data can be stored in session using the put() method. The put() method will take two arguments, the “key” and the “value”.

$request->session()->put("key", "value");

Deleting Session Data

The forget() method is used to delete an item from the session. This method will take “key” as the argument.


Use flush() method instead of forget() method to delete all session data. Use the pull() method to retrieve data from session and delete it afterwards. The pull() method will also take key as the argument. The difference between the forget() and the pull() method is that forget() method will not return the value of the session and pull() method will return it and delete that value from session.


Step 1 − Create a controller called SessionController by executing the following command.

php artisan make:controller SessionController --plain

Step 2 − After successful execution, you will receive the following output −


Step 3 − Copy the following code in a file at




namespace AppHttpControllers;

use IlluminateHttpRequest;
use AppHttpRequests;
use AppHttpControllersController;

class SessionController extends Controller {
   public function accessSessionData(Request $request) {
         echo $request->session()->get("my_name");
         echo "No data in the session";
   public function storeSessionData(Request $request) {
      $request->session()->put("my_name","Virat Gandhi");
      echo "Data has been added to session";
   public function deleteSessionData(Request $request) {
      echo "Data has been removed from session.";

Step 4 − Add the following lines at app/Http/routes.php file.


Step 5 − Visit the following URL to set data in session.


Step 6 − The output will appear as shown in the following image.

Data in Session

Step 7 − Visit the following URL to get data from session.


Step 8 − The output will appear as shown in the following image.

Virat Gandhi

Step 9 − Visit the following URL to remove session data.


Step 10 − You will see a message as shown in the following image.


See All

Comments (495 Comments)

Submit Your Comment

See All Posts

Related Posts

Laravel / Blog

How to install Laravel ?

For managing dependencies, Laravel uses composer. Make sure you have a Composer installed on your system before you install Laravel. In this chapter, you will see the installation process of Laravel.
14-Feb-2022 /15 /495

Laravel / Blog

What is Laravel - Application Structure?

The application structure in Laravel is basically the structure of folders, sub-folders and files included in a project. Once we create a project in Laravel, we get an overview of the application structure as shown in the image here.
14-Feb-2022 /15 /495

Laravel / Blog

How to setup Configuration in Laravel?

n the previous chapter, we have seen that the basic configuration files of Laravel are included in the config directory. In this chapter, let us discuss the categories included in the configuration.
14-Feb-2022 /15 /495