tp框架中的会话,

会话主要作用是跟踪客户端在服务端的的行为,会话中存储的数据可以跨页面,

session存储位置的设置:php.ini ---session.save_path
session.name=PHPSESSID 设置cookie中存储session_id的键名,session_id是当前客户端唯一的标志
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_probability /session.gc_divisor=1/1000,定期清理文件的几率;
session文件数据有效期,当前浏览器关闭,默认路径是根目录
session.cookie_lifetime = 0

session----存储于服务端

向session会话中存储数据利用$_SESSION
session_start()---读写都要开启会话
$_SESSION['userName']='grunt';
$_SESSION['loginTime']=date('Y-m-d');
print_r( $_SESSION)查看有哪些数据;
读取数据:
session_start();
print_r( $_SESSION);
删除数据
session_destroy();//销毁当前会话
unset($_session['userName']);//销毁当前会话

cookie-----存储在客户端

默认路径:当前文件
写:setcookie('键名','值');//当浏览器关闭结束,
setcookie('time',time(),time()+3600*24,'/');//第三个参数保存一天的时间,第四个参数设置路径,setcookie('time',time(),null,'localhost');//第四个参数,是设置域名,或IP
读:print_r($_COOKIE);
删除:setcookie('time','',time()-1),与写入相同,写过去时间,

tp中使用会话

session方法:
写---session('name','hah');
读----dump(session('name'));
dump(session());//获取所有session的值
dump(session('?loginTime'));//判断里面是否有loginTime;
删除:

  • session('[destroy]');//销毁数据

cookie方法:
cookie('name','hah',array('prefix'=>'think_'));//设置前缀,访问:think_name
获取值:
如果设置了cookie前缀的话:

  • $value = $_COOKIE['前缀+name'];
    如果没有设置了cookie前缀的话:
  • $value = cookie('name');
    获取所有的cookie:
  • $value = cookie();

删除:

  • cookie(null); // 清空当前设定前缀的所有cookie值cookie(null,'think_'); // 清空指定前缀的所有cookie值

登录

__initialize ---调用本类的所有方法时,会先调用此方法,用来判断是否已经登录

所有控制器都要判断的话,就单独拿出来,作为公用方法,其他的继承就可以,CommonController.class.php

你可能感兴趣的:(tp框架中的会话,)