一、cookie 是什么? 它常用于识别用户。cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。php可以创建并取回 cookie 的值。 如何创建 cookie? setcookie() 函数用于设置 cookie。 报错很正常是因为不让写入缓冲区,php初始化文件配置问题: 在/library/ect/php.ini 找到这个配置文件,然后查找一项:output_buffering将其值由原来的off改为on,重新启动Apache就ok了。 重启apache请看php专题1 设置好cookie后我们再用全局$_COOKIE得到usr 以下是运行结果 注意:在发送 cookie 时,cookie 的值会自动进行 URL 编码,在取回时进行自动解码(为防止 URL 编码,请使用 setrawcookie() 取而代之)
如何删除 cookie? 当删除 cookie 时,您应当使过期日期变更为过去的时间点。 二、php-session
PHP session 变量用于存储有关用户会话的信息,Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。 当您运行一个应用程序时,您会打开它,做些更改,然后关闭它。这很像一次会话。计算机清楚你是谁。它知道你何时启动应用程序,并在何时终止。但是在因特网上,存在一个问题:服务器不知道你是谁以及你做什么,这是由于 HTTP 地址不能维持状态。 PHP session 解决了这个问题(比如用户名称、购买商品等)。不过,会话信息是临时的,在用户离开网站后将被删除。如果您需要永久储存信息,可以把数据存储在数据库中。 Session 的工作机制是:为每个访问者创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,亦或通过 URL 进行传导。 举例:用户在网上选商品放购物车,准备支付,这时候浏览器php给它新建了个session,并把用户id写入cookie里记录。等用户支付完成后跳转回订单,让用户看到订单支付成功,这时候用户可能接个电话,十分钟后回来,支付时候发现页面失效了,其实就是服务器把你session关闭,需要用户再次登录或者到订单里面重新走一遍支付流程。 代码举例:
用session_start开始一个session 设置session的id和name 获取session的name 结束 Session 如果您希望删除某些 session 数据,可以使用 unset() 或 session_destroy() 函数 欢迎大家来稿分享自己测试和学习心得,来稿联系金阳光。qq邮箱:[email protected] 长按二维码-识别图中二维码 加入免费公益分享的大家庭吧! 让我们一起学习,快速成长。 长按二维码-识别图中二维码 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|