Reputation: 10794
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?
Upvotes: 64
Views: 129286
Reputation: 51
On Laravel 9:
$sessionId = session()->getId();
or
$sessionId = Session::getId();
Upvotes: 5
Reputation: 1832
in laravel 5.5 first write this in your controller use Session;
and inside your controller function write the following linesession()->getId();
Upvotes: 6
Reputation: 10794
Depends on the version of Laravel:
$session_id = $_COOKIE["laravel_session"];
Just not versions 4.1 and above:
$session_id = session_id(); //thanks Phill Sparks
$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:
Upvotes: 116
Reputation: 598
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();
Upvotes: 50