什么是Cookie

2021-12-04  本文已影响0人  星月落

Cookie常用于识别用户。Cookie是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送Cookie。

Cookie的工作原理是:当一个客户端浏览器连接到一个URL时,它会首先扫描本地存储的Cookie,如果发现其中有和此URL相关联的Cookie,将会把它们返回给服务器端。

Cookie通常应用于以下几个方面。

(1)在页面之间传递变量。因为浏览器不会保存当前页面上的任何变量信息,如果页面被关闭,那么页面上的所有变量信息也会消失。通过Cookie,可以把变量值在Cookie中保存下来,然后另外的页面可以重新读取这个值。

(2)记录访客的一些信息。利用Cookie可以记录客户曾经输入的信息或者访问网页的次数。

(3)把所查看的页面保存在Cookie临时文件夹中,可以提高以后的浏览速度。

用户可以通过header以如下格式在客户端生成Cookie:

        Set-cookie:NAME = VALUE;[expires=DATE;][path=PATH;][domain=DOMAIN_NAME;]

    [secure]

NAME为Cookie的名称,VALUE为Cookie的值,expires=DATE为到期日,path=PATH和domain=DOMAIN_NAME是与某个地址相对应的路径和域名,secure表示Cookie不能通过单一的HTTP连接传递。

1创建Cookie

通过PHP,用户能够创建Cookie。创建Cookie可调用setcookie()函数,语法格式如下:

setcookie(名称,cookie值,到期日,路径,域名,secure)

其中的参数与set-cookie中的参数意义相同。

setcookie()函数必须位于<html>标签之前。

在下面的例子中将创建名为user的Cookie,赋值为“Cookie保存的值”,并且规定此Cookie在一小时后过期。

    <?php

setcookie("user", " Cookie保存的值", time()+3600);

    ?>

    <html>

    <body>

    </body>

    </html>

运行上述程序,会在Cookies文件夹下自动生成一个Cookie文件,有效期为一个小时,在Cookie失效后,Cookies文件自动被删除。

2读取Cookie

在PHP中,可以使用$_COOKIE变量取回Cookie的值。下面通过实例讲解如何取回上面创建的名为user的Cookie的值,并把它显示在页面上。

<?php

//输出一个Cookie

    echo $_COOKIE["user"];

//显示所有的Cookie

    print_r($_COOKIE);

?>

3调用函数删除

删除Cookie仍然可以调用setcookie()函数,将第二个参数设置为空、第三个参数的过期时间设置为小于系统的当前时间即可。【例13.4】(实例文件:源文件\ch13\13.4.php)

    <?php

//将Cookie的过期时间设置为比当前时间减少10秒

    setcookie("user", "", time()-10);

    ?>

在上面的代码中,time()函数返回的是当前的系统时间,把过期时间减少10秒,这样过期时间就会变成过去的时间,从而删除Cookie。如果将过期时间设置为0,也可以直接删除Cookie。

欢迎关注微信公众号“PHP基础入门教程”,谢谢支持!

上一篇 下一篇

猜你喜欢

热点阅读