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

时间:2018-02-28 04:22:17

标签: laravel session

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

<?php 
$string = file_get_contents('xmltv.xml'); 
$xml = simplexml_load_string($string); 
$xml->title .= ': '.$xml->{'sub-title'}; 
unset($xml->{'sub-title'}); 
file_put_contents('xmltv.xml', $xml->asXML());
?>

,输出为:

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;
    }  
}

知道问题是什么或我遗失的地方。

感谢。

1 个答案:

答案 0 :(得分:2)

在print_r之后删除exit。问题是如果请求在exit

处中断,则会话不会存储