您的位置:首页 > 编程语言 > PHP开发

php的Cookie和Session

2015-10-26 15:37 495 查看
计应134软件实验班(刘瑞锋)学习笔记:

1.COOKIE

php作为一种开源脚本语言,是嵌入到HTML文档中执行。所以当用户打开浏览器浏览网页时,浏览器就会在用户机生成一个Cookie文件,用来记录用户所浏览信息的值,Cookie文件保存的是用户访问网址的特定信息(如上次访问位置,花费时间,账号和密码等)。

我们可以通过php脚本语言手动创建一个Cookie文件,创建Cookie文件要用到SetCookie()函数,创建Cookie文件要注意的是Cookie是HTTP头标的组成部分,而头标必须在页面其他内容发送之前发送,因此他必须最先输出。如果在函数之前输出HTML标记、echo语句或空行都会导致程序出错。如图所示:

php脚本语言:



运行结果:


如果是正确的语法格式,就会在浏览器中查看到生成的Cookie文件。如图所示:


既然我们可以通过php脚本语言手动写入Cookie文件,那就会有读取和删除Cookie文件。读取Cookie文件我们要用到$_COOKIE[name]这个方法读取Cookie文件的内容,在读取Cookie文件时我们可以用isset()函数检测一下Cookie文件是否存在。如图所示:

php脚本语言:



运行结果:



如果要删除Cookie文件,我们只需要把setcookie()函数中的第二个参数设置为空值,将第三个参数的失效时间设置为小于系统当前时间即可。setcookie("name","",time()-1);我们也可以通过浏览器手动删除保存在本地文件中的Cookie文件。

2.SESSION

session会话文件保存的数据在php脚本中是以变量的形式创建的,创建的会话变量在生命周期(20分钟)中可以被跨页面的请求所引用。另外,Session会话是存储在服务器端的。

(1)创建Session会话的方式有两种,session_start()函数和session_register()函数,Session和Cookie一样在函数之前不能有任何输出。

(2)删除Session会话,如果删除单个会话使用的是unset()函数;删除多个会话可以将一个空的数组赋值给$_SESSION实现;结束当前会话要先注销所有的会话变量,然后使用session_destroy()函数。

(3)session设置时间,使用session_set_cookie_params()函数设置Session的失效时间,需注意的是设置Session失效时间要在session_start()函数之前调用。如图所示:





如果使用session_regiseter()函数创建一个隐含的会话,要修改php.ini(目录:C:\Windows\php.ini)文件选项,将register_globals指令设置为on,然后重启Apache服务器即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 脚本语言 开源