How can I get the session ID in Laravel?(如何在 Laravel 中获取会话 ID?)
问题描述
我想在 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"];
Laravel 4.0:
只是不是 4.1 及更高版本:
$session_id = session_id(); //thanks Phill Sparks
Laravel 4.1(及更高版本):
$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?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在 Laravel 中获取会话 ID?
基础教程推荐
- 在多维数组中查找最大值 2021-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01