Php 会话未持有价值-Laravel 5.6
我在控制器中为ussd应用程序的会话设置值。在控制器中,我将值设置为会话,如下所示。当我检查Php 会话未持有价值-Laravel 5.6,php,laravel,Php,Laravel,我在控制器中为ussd应用程序的会话设置值。在控制器中,我将值设置为会话,如下所示。当我检查Log::info(config('session.passcode')的值时在情况1期间,该值被设置为通过,即234,这是准确的。但是当应用程序进入案例2时,Log::info(config('session.passcode'))会知道在session.php文件中显示默认值 为什么我不能将值(234)保存到案例2中 case '1': $ph
Log::info(config('session.passcode')的值时代码>在情况1
期间,该值被设置为通过,即234
,这是准确的。但是当应用程序进入案例2时,Log::info(config('session.passcode'))
会知道在session.php
文件中显示默认值
为什么我不能将值(234)保存到案例2中
case '1':
$phone = trim($explode[3]);
$code = '234'
$data = [
'passcode' => $pass
];
Config::set('session', $data);
Log::info(config('session.passcode'));
case '2':
Log::info('Here);
Log::info(config('session.passcode'));
您应该在laravel中设置一个会话,如:
case '1':
$phone = trim($explode[3]);
$code = '234'
$data = [
'passcode' => $pass
];
Session::put('data', $data);
Log::info(Session::get('data'));
并获取会话变量,如
case '2':
Session::get('data');
Log::info(Session::get('data'));
试一试
session.php
配置文件[Config::set('session',…)
]与实际会话之间存在差异。配置文件仅用于存储设置,实际上不能通过内联更改写入
有关正确用法,请参阅文档:
最简单的方法可能是全局会话助手,session()
//从会话中检索一段数据。。。
$value=会话(“键”);
//正在指定默认值。。。
$value=会话('key','default');
//在会话中存储一段数据。。。
会话(['key'=>'value']);
请注意,只有在返回响应时才会写入会话。如果过早结束脚本,则除非显式保存,否则会话更改将不会保存
//强制保存会话更改
会话()->save();
即使使用会话,我也会不断丢失值。这是我第一次尝试的。对于Laravel5.6,它是会话::put('data',$data)代码>非会话::set('data',$data)
@stackauth在中途退出应用程序(例如,应用程序开发中的dd()
)或发生异常时,将不会保存它。因此,如果添加,请删除dd()
。
case '1':
$phone = trim($explode[3]);
$code = '234'
$data = [
'passcode' => $pass
];
Session::put('data', $data);
Session::save();
Log::info(Session::get('data'));