1-2Controller之Session

laravel5.5版本。

视频教程是慕课网中的:轻松学会Laravel-表单篇 1-2

 

/*session简介:
        1.由于HTTP协议是无状态(Stateless)的,所以session提供一种保存用户数据的方法
        2.Laravel支持了多种session后端驱动,并提供清楚、统一的API。也内置支持如Memcached/Redis和数据库的后端驱动。
        默认使用"file"的Session驱动
        3.session的配置文件配置在config/session.php中
         * */

        /*Laravel中使用session有三种方式:
         * HTTP request类的session()方法。
         * session()辅助函数
         * session facade
         * */

 

路由:

Route::group(['middleware'=>['web']],function (){
    Route::any('session1',['uses'=>'StudentController@session1']);
    Route::any('session2',['uses'=>'StudentController@session2']);
});

  

控制器中的方法:

 public function session1(Request $request){
    
        //1.HTTP request session();
        //把session存储起来
        //$request::session()->put('key1','value1');
        //取出第一步存储的session的值:
        //echo $request::session()->get('key1');

        //2.session()的辅助函数:
        //存储session的值:
        //session()->put('key2','value2');
        //取出session的值:
        //echo session()->get('key2');

        //3.Session的类:
        //存储session的值:
        //Session::put('key3','value3');
        //取出session的值:
        //echo Session::get('key3');

        //如果session不存在,取默认值:
        //echo Session::get('key4','default');

        //以数组的形式存储数据:
        //存储session的值:
        //Session::put(['key5'=>'value5']);
        //取出session的值:
        //echo Session::get('key5');

        //把数据放到Session的数组中:
        /*Session::push('student','sean');
        Session::push('student','imooc');*/

        //取出session数组中的内容:
        /*$res=Session::get('student','default');
        var_dump($res);*/

        //pull: 取出数据一次之后,就删除数据了。第一次正常取出,第二次只能获得默认值
        /*$res=Session::pull('student','default');
        var_dump($res);*/

        //取出所有的值:
        /*$res=Session::all();
        dd($res);*/

        //判断session中某个值是否存在:
        /*if (Session::has('key11')){
            $res=Session::all();
            dd($res);
        }else{
            echo "不存在请求的key值";
        }*/

        //forget删除Session中指定的key的值:
        /*Session::forget('key1');
        $res=Session::all();
        dd($res);*/

        //flush清空所有session信息
        /*Session::flush();
        $res=Session::all();
        dd($res);*/

        //flash:暂存数据,存储的数据只能输出一次
        /*Session::flash('key-flash','val-flash');
        echo Session::get('key-flash');*/
    }
    public function session2(Request $request){

    }

  

有问题可以留言,或是看慕课网视频

posted @ 2018-02-25 10:31  生如逆旅,一苇以航  阅读(256)  评论(0编辑  收藏  举报