Laravel-Session的获取和设置和删除(Redis)

 

怎么样使用在Laravel中使用会话?

1.可以是请求的对象$request一般控制器中。
2.可以是一个全局类Session。

配置Redis做单点登录(前提必须有Redis的服务器)

1.composer require predis/predis安装

2.找到.evn更改配置
    SESSION_DRIVER=redis
    
3.找config/database.php文件更改reids的扩展(前提是你php.ini加这个扩展phpredis)
    1.找到数组里面的redis改配置
        'client' => 'phpredis',

1.存储会话数据

1.全局
    1.session(['key', 'value']);
    2.session::put('key', value);
    3.在 Session 数组中保存数据
        1.$request->session()->push('user.teams', 'developers');
        2.session::push('user.teams', 'developers');
                        
2.请求的对象

    1.$request->session()->put('key', 'value');
    2.$request->session(['key', 'value']);

2.获取会话数据

1.全局
    1.session::get('key');
        可以使用默认值:
        session::get('key', 'default');
    2.获取全部session数据
        1.session::all();
        2.$request->session()->all();
2.请求对象

    1.$request->session()->get('key');
        默认值:
            $request->session()->get('key', 'default');
    2.获取全部session数据
        $request->session()->all();

3.判断会话中是否存在某个值

1.全局
    session::has('key');
    session::exists('key');
    
2.请求对象
    
    1.$request->session()->has('users');
    2.$request->session()->exists('users');

4.删除会话中的值

1.检索删除
    1.$request->seesion()->pull('key', 'default');
    2.session::pull('key', 'default');
    
2.删除数据
    1.$request->session()->forget('key');
    2.$request->session()->flush('key');
        注:同样可以用全局类session

5.重新生成的SessionID

1.$request->session()->regenerate();
    注:同样可以用全局类Session

6.设置在session_start生成的sessionId的储存客户端时间

1.可以文件config\session.php
    更改 'lifetime'=> 100,
2.注意以上单位是分钟

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值