How can I get the session ID in Laravel?

PhpLaravelLaravel 4

Php Problem Overview


I want to get the id of the session in Laravel 4

In Laravel 3, it was a bit hacky, but possible with this code:

$session_id = Session::$instance->session['id'];

But I can't work it out in Laravel 4... referencing the Session::$instance object throws errors:

> Access to undeclared static property: Illuminate\Support\Facades\Session::$instance

have tried:

$session_id = Session::get('id');

but to no avail.. any ideas?

Php Solutions


Solution 1 - Php

Depends on the version of Laravel:

Laravel 3:

$session_id = $_COOKIE["laravel_session"];

Laravel 4.0:

Just not versions 4.1 and above:

$session_id = session_id(); //thanks Phill Sparks

Laravel 4.1 (and onwards):

$session_id = Session::getId();

or

$session_id = session()->getId()

Laravel no longer uses the built-in PHP sessions directly, as a developer could choose to use various drivers to manage the sessions of visitors (docs for Laravel 4.2, Laravel 5.1, Laravel 5.2).

Because of this, now we must use Laravel's Session facade or session() helper to get the ID of the session:

Solution 2 - Php

Just had a little hunt for myself, because the above answers didn't work for me (Laravel 4.1)...

Had to use this:

Session::getId();

Solution 3 - Php

in laravel 5.5 first write this in your controller use Session; and inside your controller function write the following linesession()->getId();

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionmsturdyView Question on Stackoverflow
Solution 1 - PhpmsturdyView Answer on Stackoverflow
Solution 2 - PhpAlex RegenbogenView Answer on Stackoverflow
Solution 3 - PhpAhmed MahmoudView Answer on Stackoverflow