我想在 Laravel 4 中获取会话的 ID
I want to get the id of the session in Laravel 4
在 Laravel 3 中,这有点 hacky,但可以使用以下代码:
In Laravel 3, it was a bit hacky, but possible with this code:
$session_id = Session::$instance->session['id'];
但我无法在 Laravel 4 中解决...引用 Session::$instance
对象会引发错误:
But I can't work it out in Laravel 4... referencing the Session::$instance
object throws errors:
访问未声明的静态属性:IlluminateSupportFacadesSession::$instance
Access to undeclared static property: IlluminateSupportFacadesSession::$instance
试过了:
$session_id = Session::get('id');
但无济于事..有什么想法吗?
but to no avail.. any ideas?
取决于 Laravel 的版本:
Depends on the version of Laravel:
$session_id = $_COOKIE["laravel_session"];
只是不是 4.1 及更高版本:
$session_id = session_id(); //thanks Phill Sparks
$session_id = Session::getId();
或
$session_id = session()->getId()
Laravel 不再直接使用内置的 PHP 会话,因为开发人员可以选择使用各种驱动程序来管理访问者的会话(Laravel 4.2, Laravel 5.1, Laravel 5.2).
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).
因此,现在我们必须使用 Laravel 的 Session
门面或 session()
助手来获取会话的 ID:
Because of this, now we must use Laravel's Session
facade or session()
helper to get the ID of the session:
这篇关于如何在 Laravel 中获取会话 ID?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!