php cookie怎么使用方法,cookie的用法详细讲解

本文详细介绍了Cookie的工作原理,通过实例展示了在浏览器中如何查看和管理Cookie。Cookie用于在HTTP协议无状态的情况下存储用户信息,例如登录状态。通过JavaScript,我们可以设置、获取和删除Cookie,实现自动登录等功能。了解Cookie对于前端开发至关重要,因为它涉及到用户会话管理和网站个性化体验。
摘要由CSDN通过智能技术生成

我们在浏览器中,经常涉及到数据的交换,比如你登录邮箱,登录一个页面。我们经常会在此时设置30天内记住我,或者自动登录选项。那么它们是怎么记录信息的呢,答案就是今天的主角cookie了,Cookie是由HTTP服务器设置的,保存在浏览器中,但HTTP协议是一种无状态协议,在数据交换完毕后,服务器端和客户端的链接就会关闭,每次交换数据都需要建立新的链接。

一、什么叫cookie?

你进入某个网站,需要登录密码和帐号。你初次注册之后,登录,进入网站主页面。这时你的计算机就会自动保存一个cookie信息(该信息可以通过火狐浏览器查看,chrom不具备这项功能),该信息中包含你初次登录的账号和密码,当你下一次再登录这个网站时浏览器会自动取出计算机中相关的cookie信息,这样就不会出现登录页面而是直接跳转到网站主页。

以新浪微博为例

1、下面显示查看cookie信息的操作

###打开火狐浏览器,右键

23bc6426b71299814202d8cf8791b3cc.png

选择“查看页面信息”

0474769c742b1b284282254886aa3f11.png

选择安全选项,点击“查看cookie”

5799a7ecafe2e479797d88bf5e73a208.png

上图显示的一系列的文件夹,包含着一系列的进入各个网站的相关信息。

276272112e068056a265491a51808ab7.png

点开文件夹,你就会发现如上图所示的信息,每一条信息都是一条cookie,他们都具有名称、内容以及过期时间。这里着重强调一下,过期时间是指一旦到达这个时间点,该条cookie信息就会自动消失。

2、以“新浪微博”为例来观察cookie信息的建立与消失

首先我点击新浪“全部移除”(此功能在上图中的最底部),消除所有的cookie信息。然后进入新浪微博页面。

1118043412b1966c565d6911770e61d0.png

此时显示未登录状态。再次清除所有cookie信息(登录网站就会出现这些无关重要的cookie信息),避免对后面的演示造成影响。

登陆后,页面如下:

871957aff5eaf488d558ae07613a66b7.png

如果我们推出在进入这个页面,你会发现不需要在登录,你会直接进入到如图三所示的界面。可是如果你再次去除所有的cookie,再次登录这个界面就会出现如图2所示的页面。

相比到这里大家已经初步理解了cookie的用法。

二、cookie的程序编写

1、设置cookie

87096fb0b36d8fc02f6c77a73f01b0e0.png

效果如下图:

1cc089b3545232e55a8f98f72df38a7f.png

查看cookie(第一个文件夹装载这几条cookie信息)

3002cbc75c61805b3bb920b0d9354a78.png

注意名称与内容。”a=hello”等号前面表示名称,等号后面表示内容。

**通过上面这种方式创建的cookie比较繁琐,如果多写几条就会显得麻烦。我们可以通过函数的方式创建cookie。

3ed61e4f71ef6aea7d4fad57ed6d70f2.png

2、获取cookie

cookie既然已经创建,那么我们登录页面的时候,浏览器会通过什么样的程序来获取计算机中任意一条cookie信息。

我们现在通过 alert(document.cookie);看到的效果如下图:

8ef703e1d89c2b7ee9a026fda259eb46.png

是一条长长的字符串。我们现在要做的是获取其中单条cookie信息,并且输出等号后面的值。做法如下:

d8f94e951437c2ba9308f0a1d5ce3b95.png

输出结果如下:

0d03bf962bd206fcb244c8f4b007b70e.png

638719951552962da56052e2e78f4123.png

**为什么alert(getCookie(“眼睛”));alert(getCookie(“头发”));这两条代码运行的时候为什么显示为空?

dac3a19954d702c985bda9e716bbef5d.png

为什么要加一个空格?

1fee3d0115cbf3564aead42ae812487e.png

如上图所示,通过split()分割字符串时要这样写:split(“; “);

3.移除cookie

只要将cookie的过期时间设置为负值,cookie就会直接消失。

32ad1fa084425d712e4f96b40b2635ca.png

0859ad595791219c56772e378a81dd8f.png

三、全部代码如下:

4f34a66dd715b9deabf7d769b5c31faa.png

e071955ff18bff51010f117bccc995c6.png

就上面的cookie来说吧,要想掌握cookie,就必须懂它的来源,是什么,它存在的意义是就是为了保存用户的信息,然后知道是怎么保存的,保存的形式知道了,就可以运用我们学到的js基础知识语法来操作它改变它,使之变为我们需要的样子,懂了需求之后,归根到底还是考察js的基础操作,字符串的操作,正则表达式的应用等等。

更多关于cookie文章:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值