Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 会话未持有价值-Laravel 5.6_Php_Laravel - Fatal编程技术网

Php 会话未持有价值-Laravel 5.6

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

我在控制器中为ussd应用程序的会话设置值。在控制器中,我将值设置为会话,如下所示。当我检查
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'));