session和cookie的区别和联系
使用session会在客户端生成一个文件,这个文件是以session_id来命名,用来保存文件;生成的文件保存在这个路径中:session.save_path = "D:/wampstack/php/tmp";
获取sessionid: 可以用session_id();也可以用$_COOKIE['PHPSESSID'];获取。 //因为session是依赖于cookie存储的。
session的存储:$_SESSION['username']='张三'; //在存储session文件中的值是通过后台serialiaze(序列化)之后的值。
session的删除:unset($_SESSION['username']); //这里的删除是删除的保存文件中的变量,要想删除文件要使用session_destroy();,会把服务器中的session文件删除,但浏览器中的session信息不会删除。
$_SESSION=array();//给变量赋一个空的数组,可以删除session中所有的变量,unset()
session会话期间是从输入域名打开一个网站一直到浏览器关闭,这时session结束。
cookie会话期间是一直保存在浏览器中。
session的生存周期可以通过setcookie来设置,setcookie(session_name(), session_id(), time()+60,'/'); //session_name的过期时间(秒)和路径要跟默认的保持一致。
cookie的设置:setcookie(名字,值,time()+3600); //第三个参数为生存周期,即是浏览器关闭也会存在,如果没有设置,默认为0,代表直到浏览器关闭才会失效。
cookie的存储路径:win/temp
cookie的删除:通过setcookie(名字,‘ ’,time()-1); //赋空值的方法。
cookie的存储:默认存储路径为根目录,根目录下的所有文件都共享cookie信息。
js中只有cookie没有session,因为session是服务器端;js中time()表示毫秒。
header("Set-Cookie:user2=zh;path=/;expires=");//header发送cookie请求
应用:用户登录记住密码用cookie,但是cookie不安全;如果不用记住密码功能,用session
浙公网安备 33010602011771号