代码之家  ›  专栏  ›  技术社区  ›  Shakir Baba

如何在laravel中访问不同请求的会话

  •  0
  • Shakir Baba  · 技术社区  · 7 年前

    我将会话变量保存在一个控制器中,并能够在保存后获取该变量。

    class OrderController extends Controller{
    
        public function order(){
            echo "<pre>";
            Session::put('shakir','shakir');
            //Session::get('shakir');
            print_r(Session::all());
            exit;
        }  
    }
    

    输出为:

    Array(
        [_token] => LaQpxgzrhg0PX4YyGWmOZZpv1j3Ofj8jmEVQwpgD
        [_previous] => Array(
                [url] => http://127.0.0.1:8000/search
            )
        [PHPDEBUGBAR_STACK_DATA] => Array
            ()
        [_flash] => Array(
                [old] => Array
                    ()
                [new] => Array
                    ()             
            )
    
           [shakir] => shakir
        )
    

    但是,当我尝试在另一个控制器中访问同一会话时,添加的会话不存在于其中。

    class SearchController extends Controller{
    
        public function search(){
            echo "<pre>";
            //Session::get('shakir');
            print_r(Session::all());
            exit;
        }  
    }
    

    输出为:

    Array(
        [_token] => LaQpxgzrhg0PX4YyGWmOZZpv1j3Ofj8jmEVQwpgD
        [_previous] => Array(
                [url] => http://127.0.0.1:8000/search
            )
        [PHPDEBUGBAR_STACK_DATA] => Array
            ()
        [_flash] => Array(
                [old] => Array
                    ()
                [new] => Array
                    ()             
            )
    )
    

    你知道问题出在哪里,我错过了什么吗。

    谢谢

    1 回复  |  直到 7 年前
        1
  •  2
  •   akaincore    7 年前

    只需在print\r后删除exit。问题是如果请求在中断,会话不会存储 exit