11、php会话控制(1.cookie)
11.1三种网页之间传递数据的方法
A、使用超链接或者header()函数等重定向的方式。通过在URL的GET请求中附加参数的形式,将数据从一个页面转向另一个页面的PHP脚本中。也可以通过网页中的各种隐藏表单来存储使用者的资料,并将这些信息在提交表单是传递给服务器中的PHP脚本使用。
B、使用cookie将用户的状态信息存放在客户端的计算机之中,让给其他程序能通过存取客户端计算机的Cookie,存取目前使用者的资料。
C、相对于Cookie还可以使用Session将访问者的状态信息存放于服务器之中,让其他程序也能通过服务器中的文件或数据库,来存取使用者的资料。
11.2向客户端计算机中设置Cookie
格式:
bool setCookie(string $name,string $value,int $expire, string $path,string $domain,bool $secure)
参数 描述
name :仅此必需。规定 cookie 的名称。
value :可选,规定 cookie 的值,可以为数值或字符串形态,此值保护在客户端,不要用来保存敏感数据。
expire :可选。规定 cookie 的生存时间。是一个UNIX时间戳,由time()和mktime()函数传回
time()+36002430 将设置 cookie 的过期时间为 30 天。如果这个参数没有设置,那么 cookie 将在 session 结束后(即浏览器关闭时)自动失效。
path :可选。规定 cookie 的服务器路径。
如果路径设置为 “/”,那么 cookie 将在整个域名内有效.如果路径设置为 “/test/”,那么 cookie 将在 test 目录下及其所有子目录下有效。默认的路径值是 cookie 所处的当前目录。
domain :可选。规定 cookie 所属服务器的网址名称,预设是建立此Cookie服务器的网址。
为了让 cookie 在 example.com 的所有子域名中有效,您需要把 cookie 的域名设置为 “.example.com”。当您把 cookie 的域名设置为 www.example.com 时,cookie 仅在 www 子域名中有效。
secure:可选。规定是否需要在安全的 HTTPS 连接来传输 cookie。如果 cookie 需要在安全的 HTTPS 连接下传输,则设置为 TRUE。默认是 FALSE。
11.3在PHP脚本中读取Cookie的资料内容
任何从客户端发送过来的Cookie信息,都被自动保存在-COOKIE全局数组存储所有通过HTTP传递Cookie资料内容,并以Cookie的识别名称为索引值、内容值为元素,和我们介绍的全局数组(_POST的用法相似)
格式:print($_COOKIE);
11.4数组形态的Cookie应用
11.5删除Cookie
方法一、将Cookie的生存时间默认为空,则生存期限与浏览器相同,浏览器关闭是Cookie就会被删除。
方法二、Cookie的有效限制参数的含义是当超过设定时间时,系统就会自动删除。