• 欢迎浏览“String me = Creater\忠实的资深Linux玩家;”,请文明浏览,理性发言,有侵犯你的权益请邮件我(creater@vip.qq.com).
  • 把任何的失败都当作一次尝试,不要自卑;把所有的成功都想成是一种幸运,不要自傲。
  •    2年前 (2016-10-08)  php |   抢沙发  10 
    文章评分 0 次,平均分 0.0

    session的作用:session可以长时间的保存数据,不丢失。

    session的常用于:
    1.登录,保存登录信息
    2.保存购物车信息
    3.保存验证码信息
    链接:http://document.thinkphp.cn/manual_3_2.html#session

    定义session常量

    define('WXUSER', 'wxuser_session');
    define('MEMBER', 'member_session');
    define('MERCHANT', 'merchant_session');
    define('AGENT', 'agent_session');
    define('CART', 'cart_session');

    给session赋值

    session(MERCHANT, $user['id']);

    根据session获取用户信息

    $user = M('user')->where(array('id' => session(MERCHANT)))->find();
    $this->user = $user;
    $this->user_id = $user['id'];

    如果session存在,直接进入主界面,否则进入登录界面

     //商户登陆
        public function login() {
            if (session(MERCHANT)) {
                $this->redirect(U('User/Index/index'));
            } else {
                $this->display();
            }
        }

    登出,销毁session

    //登出
        public function userLogout()
        {
            session(null);
            //session_destroy();
            //unset($_SESSION);
            $this->redirect(U('Home/Index/index'));
        }

    关于session的几点理解与测试

    • 同一个浏览器,同一个session名,不同的网址,保存的位置不同。销毁其中一个,另外的并没有收到影响。
    • session是保存在服务器上的,不同的网址意味着不同的服务器。销毁其中一个,其他的并没有收到影响。
    • 当你关闭浏览器的时候,session的死期也就到了。
    • 同一个网址,不同的浏览器打开都有对应的一个session。
    • 大部分的Session机制都使用进程中Cookie来保存Session_id的,关闭浏览器后这个进程也就自动消失了,进程中的Cookie自然就消失了,那么Session_id也跟着消失了,再次连接到服务器时也就无法找到原来的Session了。
    • 我们可以在登陆时点击下次自动登录,比如说“记住我一周”。这就要用到我们上文提到的另一种Cookie了——硬盘中Cookie,这时Session_id将长期保存在硬盘上的Cookie中,直到失效为止。
     

    除特别注明外,本站所有文章均为String me = "Creater\忠实的资深Linux玩家";原创,转载请注明出处来自http://unix8.net/home.php/5246.html

    关于

    发表评论

    暂无评论

    切换注册

    登录

    忘记密码 ?

    切换登录

    注册

    扫一扫二维码分享