首页 > 代码库 > PHP-day5

PHP-day5

13.Cookie

Cookie:一种在客户浏览器端存储数据并以此来跟踪和识别用户的机制。

 

创建Cookie:

bool setcookie(string name[,string value[,int expire[,string path[,string domain[,int secure]]]]])

name Cookie的变量名

value Cookie变量的值,该值保存在客户端,不能用来保存敏感数据

expire Cookie的失效时间

path Cookie在服务端的有效路径

domain Cookie有效的域名

secure 指明Cookie是否仅通过安全的HTTPS,值为0或1

 

删除Cookie:

1.利用setcookie()函数将第二个参数设为空值,将失效时间设为小于系统的当前时间即可。

setcookie("name","",time()-1);

2.在浏览器中手动删除Cookie

 

14.Session

创建会话:启动会话->注册会话->使用会话->删除会话

1.启动会话:session_start()函数,或使用session_register()函数为会话创建一个变量来隐含地启动会话

2.注册会话:会话变量被创建后,全部保存在数组$_SESSION中,可直接给该数组添加元素以创建一个会话变量

3.使用会话:首先判断会话变量是否有一个会话ID存在,如果不存在,就创建一个,并且使其能够通过全局数组$_SESSION进行访问;如果已经存在,则将这个已创建的会话变量载入以供用户使用。

4.删除会话:a.删除单个会话:unset($_SESSION[‘user‘]);b.删除多个会话:$_SESSION = array();c.结束当前会话:session_destroy();

 

Session设置时间:

1.客户端没有禁止Cookie:

a.session_set_cookie_params();此函数是Session结合Cookie设置失效时间。 该函数不推荐使用,会在一些浏览器上出现问题。

b.使用setcookie()函数:setcookie(session_name(),session_id(),time()+$time,"/");

2.客户端禁止Cookie:

a.登录前提醒用户必须打开Cookie

b.设置php.ini文件session.use_trans_sid=1,或编译时打开-enable-trans-sid选项

c.通过GET方法,隐藏表单传递session_id

d.使用文件或者数据库存储session_id,传递时手动调用

PHP-day5