session cookie总结

来源:互联网 发布:罗马全面战争2dlc 知乎 编辑:程序博客网 时间:2024/05/21 15:43

1. 使用cookie的注意事项有哪些?
1) setcookie()之前不可以有任何页面输出,就是空格,空白行也不可以;
2) setcookie()后,在当前页面调用$_COOKIE['cookiename']不会有输出,必须刷新或到下一个页面才可以看到cookie值;
3) 不同的浏览器对cookie处理不同,客户端可以禁用cookie,浏览器也可以闲置cookie的数量,一个浏览器能创建的cookie数量最多300个,并且每个不可以超过4kb,
每个web站点能设置的cookie总数不能超过20个。
4) cookie是保存在客户端的,用户禁用了cookie,那么setcookie就不会起作用了。所以不可以过度依赖cookie。

2. 使用session的时候,通过什么来表示当前用户,从而与其他用户进行区分?
sessionid,通过session_id()函数可以取得当前的session_id。

3. session和cookie的使用步骤分别是什么?什么是sesssion和cookie的生命周期?session和cookie的区别是什么?
 cookie是保存在客户端机器的,对于未设置过期时间的cookie,cookie值会保存在机器的内存中,只要关闭浏览器则
 cookie自动消失。如果设置了cookie的过期时间,那么浏览器会把cookie以文本文件的形式保存到硬盘中,
 当再次打开浏览器时cookie值依然有效。
 
 session是把用户需要存储的信息保存在服务器端。每个用户的session信息就像是键值对一样存储在服务器端,
 其中的键就是sessionid,而值就是用户需要存储信息。服务器就是通过sessionid来区分存储的session信息是
 哪个用户的。
 
 两者最大的区别就是session存储在服务器端,而cookie是在客户端。session安全性更高,而cookie安全性弱。

 session在web开发中具有非常重要的份量。它可以将用户正确登录后的信息记录到服务器的内存中,当用户以此身份
 访问网站的管理后台时,无需再次登录即可得到身份确认。而没有正确登录的用户则不分配session空间,即便输入了
 管理后台的访问地址也不能看到页面内容。通过session确定了用户对页面的操作权限。
 
 使用session的步骤:
 1. 启动session:
  使用session_start()函数来启动。
 2. 注册会话:
     直接给$_SESSION数组添加元素即可。
 3. 使用会话:
  判断session是否为空或者是否已经注册,如果已经存在则像普通数组使用即可。
 4. 删除会话:
  1.可以使用unset删除单个session;不能删除$_SESSION数组变量          
  2.使用$_SESSION=array()的方式,一次注销所有的会话变量;  只是清空内存中的session数组,不影响session文件
  3.使用session_destroy()函数来彻底销毁session。      会删除保存session的文件


 cookie怎么使用?
 1. 记录用户访问的部分信息
 2. 在页面间传递变量
 3. 将所查看的internet页存储在cookies临时文件夹中,可以提高以后的浏览速度。

 创建cookie:
  setcookie(string cookiename , string value , int expire);
 读取cookie:
  通过超级全局数组$_COOKIE来读取浏览器端的cookie的值。
 删除cookie:有两种方法
  1.手工删除方法:
   右击浏览器属性,可以看到删除cookies,执行操作即可将所有cookie文件删除。
  2.setcookie()方法:
   跟设置cookie的方法一样,不过此时讲cookie的值设置为空,有效时间为0或小于当前时间戳。

 


3. 在实际开发中,session在哪些场合使用?
 session用来存储用户登录信息和用在跨页面传值。
 1)常用在用户登录成功后,将用户登录信息赋值给session;
 2)用在验证码图片生成,当随机码生成后赋值给session。

44. 注销session会话的形式有几种?

用户的注销session_destroy();