PHP中Cookie的使用详解(简单易懂)


Posted in PHP onApril 28, 2017

PHP中Cookie的使用---添加/更新/删除/获取Cookie 及 自动填写该用户的用户名和密码和判断是否第一次登陆

什么是cookie

服务器在客户端保存用户的信息,比如登录名,密码等

这些数据就像小甜饼一样,数据量并不大,服务器端在需要的时候可以从客户端读取,保存在客户端的浏览器缓存目录下

①  当浏览器访问,cookie.php时,服务器还以Set-Cookie:name=zxf;expire=Wed,21-Sep-2017 20:14 GMT会送http响应,当浏览器获取到该消息后,就会保存该cookie的信息到本地磁盘

②  如果我们没有时间(第三个参数)

cookie不会保存到客户端,当浏览器会话结束,cookie会失效

③  cookie保存的是字符串信息

④  客户端可以保存多个key=>val

⑤  cookie在保存过程中,会对中文进行urlencode编码

cookie可以有多个key=>val,可以给不同的键值,制定不同的有效时间

代码如下:xx.php

<?php
//添加cookie
setcookie("name","zxf",time()+3600);
//数组

/$arr = array(1,2,3); 
 $arr_str = serialize($arr); 
 setcookie("a",$arr_str,time()+3600); 

//获取cookie
 
var_dump($_COOKIE);

//更新cookie

setcookie("name","aaa",time()+3600);

//删除cookie

setcookie("name","",time()-20);

//删除所有

foreach ($_COOKIE as $key => $value) {
 setcookie($key,"",time()-1);
 }
echo "成功";
 ?>

如果你删除的cookie的key=>val没有删除完,则这个cookie在客户端保留,如果把这个网站的cookie都删除的,则浏览器会把cookie文件删除

判断是否第一次登陆

<?php

//先判断cookie里是否有上次的登录信息

if(!empty($_COOKIE[‘lastVisit'])){

  echo “你上次登陆的时间是”.$_COOKIE[‘lastViat'];

//更新时间

setcookie(“lastVisit”,”data(Y-m-d H:i:s)”, time()+3600);

}else{

//说明用户是第一次登陆

echo”第一次登陆”;

//更新时间

setcookie(“lastViait”,”data(“Y-m-d H:i:s”)”, time()+3600);

}
?>

打开登陆界面的时候,自动填写该用户的用户名和密码

checklogin.php

//获取用户是否选中了保存id

if(!empty($_POST[‘cookie'])){

  setcookie(“id”,$id,time()-100);

}else{

  if(!empty($_COOKIE[‘id'])){

   setcookie(“id”,$id,time()-10);

}
}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

PHP 相关文章推荐
php 调试利器debug_print_backtrace()
Jul 23 PHP
PHP四舍五入精确小数位及取整
Jan 14 PHP
PHP return语句的另一个作用
Jul 30 PHP
从零开始学YII2框架(五)快速生成代码工具 Gii 的使用
Aug 20 PHP
php实现删除指定目录下相关文件的方法
Oct 20 PHP
php如何实现不借助IDE快速定位行数或者方法定义的文件和位置
Jan 17 PHP
PHP大文件分割上传 PHP分片上传
Aug 28 PHP
PHP有序表查找之插值查找算法示例
Feb 10 PHP
YII框架关联查询操作示例
Apr 29 PHP
PHP 进程池与轮询调度算法实现多任务的示例代码
Nov 26 PHP
PHP架构及原理知识点详解
Dec 22 PHP
PHP SESSION跨页面传递失败解决方案
Dec 11 PHP
PHP解决中文乱码
Apr 28 #PHP
PHP中常用的魔术方法
Apr 28 #PHP
PHP实现Unicode编码相互转换的方法示例
Nov 17 #PHP
PHP实现文件下载【实例分享】
Apr 28 #PHP
PHP实现批量删除(封装)
Apr 28 #PHP
ThinkPHP实现生成和校验验证码功能
Apr 28 #PHP
PHP后台微信支付和支付宝支付开发
Apr 28 #PHP
You might like
PHP实现的线索二叉树及二叉树遍历方法详解
2016/04/25 PHP
PHP使用标准库spl实现的观察者模式示例
2018/08/04 PHP
php设计模式之代理模式分析【星际争霸游戏案例】
2020/03/23 PHP
jQuery extend 的简单实例
2013/09/18 Javascript
jQuery制作简单柱状图实例
2015/01/28 Javascript
对JavaScript中this指针的新理解分享
2015/01/31 Javascript
Jquery结合HTML5实现文件上传
2015/06/25 Javascript
jquery对象访问是什么及使用方法介绍
2016/05/03 Javascript
JS双击变input框批量修改内容
2016/12/12 Javascript
JQuery和HTML5 Canvas实现弹幕效果
2017/01/04 Javascript
Bootstrap 模态对话框只加载一次 remote 数据的完美解决办法
2017/07/09 Javascript
在Vant的基础上封装下拉日期控件的代码示例
2018/12/05 Javascript
详解Vscode中使用Eslint终极配置大全
2019/11/08 Javascript
vue Element左侧无限级菜单实现
2020/06/10 Javascript
python在命令行下使用google翻译(带语音)
2014/01/16 Python
基于Django用户认证系统详解
2018/02/21 Python
pip install urllib2不能安装的解决方法
2018/06/12 Python
python遍历文件夹找出文件夹后缀为py的文件方法
2018/10/21 Python
学习Python需要哪些工具
2020/09/04 Python
PyQt5通过信号实现MVC的示例
2021/02/06 Python
阿迪达斯中国官网:Adidas中国
2020/12/14 全球购物
英国健身专家:WIT Fitness
2021/02/09 全球购物
PHP如何与mysql建立链接
2013/05/05 面试题
估算杭州有多少软件工程师
2015/08/11 面试题
名词解释型面试题(主要是网络)
2013/12/27 面试题
机械绘图员岗位职责
2013/11/19 职场文书
自我鉴定怎么写
2013/12/05 职场文书
老师给学生的表扬信
2014/01/17 职场文书
文明青少年标兵事迹材料
2014/01/28 职场文书
留守儿童工作方案
2014/06/02 职场文书
涉及车辆房产分割的离婚协议书范文
2014/10/12 职场文书
总结会主持词
2015/07/02 职场文书
幼儿园元旦主持词
2015/07/06 职场文书
MySQL 时间类型的选择
2021/06/05 MySQL
我的收音机情缘
2022/04/05 无线电
MySQL 字符集 character
2022/05/04 MySQL