位置: 编程技术 - 正文

浅谈COOKIE和SESSION区别(cookie 区别)

编辑:rootadmin

推荐整理分享浅谈COOKIE和SESSION区别(cookie 区别),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cookie和seeion,cookie 区别,cookie和set cookie,cookie 和session,简析cookie和session的区别,cookie和seesion,cookie和seesion,cookie和seesion,内容如对您有帮助,希望把文章链接给更多的朋友!

一、cookie介绍

cookie 常用于识别用户。cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。

1、设置Cookie

PHP用SetCookie函数来设置Cookie。

SetCookie函数定义了一个Cookie,并且把它附加在HTTP头的后面,SetCookie函数的原型如下: int SetCookie(string name, string value, int expire, string path, string domain, int secure);

参数说明:cookie名称,cookie值,过期时间(int),有效路径,有限域名,https传递才有效

注意:当前设置的Cookie不是立即生效的,而是要等到下一个页面时才能看到.这是由于在设置的这个页面里Cookie由服务器传递给客户浏览器,在下一个页面浏览器才能把Cookie从客户的机器里取出传回服务器的原因。

使用例子:

普通使用:

setcookie('name','PHP淮北');

带失效时间的: setcookie('name','PHP淮北',time()+**);//1day

Cookie是面向路径的 ,默认存储在当前文件下,如果没有设置路径,不同文件下的cookie默认保存在不同文件夹下,如图:默认保存在mytest文件夹下

2、接收和处理Cookie

用户端与服务端的web通信协议是http。而PHP通过http取得用户数据惯用的三种方法分别是:POST方法、GET方法还有Cookie。而PHP默认传递方法正是Cookie,也是最佳方法。

比如设置一个名为MyCookier的Cookie,PHP会自动从WEB服务器接收的HTTP头里把它分析出来,并形成一个与普通变量一样的变量,名为$myCookie,这个变量的值就是Cookie的值

3,删除Cookie

要删除一个已经存在的Cookie,有两个办法:

一是调用只带有name参数的SetCookie,那么名为这个name的Cookie将被从关系户机上删掉;例如:setcookie('name','');另一个办法是设置Cookie的失效时间为time()或time()-1,那么这个Cookie在这个页面的浏览完之后就被删除了(其实是失效了)。 例如:setcookie('name','PHP淮北',time()-**); 要注意的是,当一个Cookie被删除时,它的值在当前页在仍然有效的。 使用Cookie的注意事项:

首先是必须在HTML文件的内容输出之前设置(Cookie是HTTP协议头的一部分,用于浏览器和服务器之间传递信息,所以必须在任何属于HTML文件本身的内容输出之前调用Cookie函数。在PHP页面可以先使用

ob_start();//开启

code…..

ob_end_flush(); //刷新缓存

可以防止header提示错误);

不同的浏览器对Cookie的处理机制不一样cookie限制是在客户端的。一个浏览器能创建的Cookie数量最多为个,并且每个不能超过4KB,每个WEB站点能设置的Cookie总数不能超过个。当前设置的Cookie不是立即生效的,而是要等到下一个页面时才能看到

二、session介绍

浅谈COOKIE和SESSION区别(cookie 区别)

session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息,每一个网站访客都会被分配给一个唯一的标志符,即会话ID,它的存放形式无非两种:要么经过url传递,要么保存在客户端的Cookies里.当然,你也可以将Session保存到数据库里,这样会更安全,但效率方面会有所下降.url方式传递安全性肯定太差,PHP的会话机制是通过设置Cookie,在Cookie中保存会话id(Session ID),在服务器端会生成session文件,与用户进行关联,Web应用程序存储与这些Session相关的数据,并在各页面间进行传递.

PHP相关函数

在PHP中有关Session的函数比较多,不过我们最常用到的也就这么几个函数:

session_start():启用session机制,在需要用到session的程序文件的最开始调用它.

session_register():注册session变量

session_unregister(): 删除session变量(一个一个删除)

session_is_registered(): 判断session变量是否注册

session_distroy(): 销毁所有session变量(所有session变量销毁,包括文件)

需要注意下面几个方面:

1.函数session_start()必须在程序最开始执行,在其前面不能有任何输出内容,否则

就会出现“Warning:Cannot send session cookie - headers already

sent"类似这样的警告信息.

2.函数session_register()用于注册要保存在session中的相关变量,其用法如下:

val即为要注册的session变量名,在注册时一定不要加上"$"符号,只写其变量名称即可.

3.函数session_unregister()与上面函数用法完全相同,但功能相反,上面函数是注册

session变量,而其则是删除指定的session变量.

4.函数session_is_registered()用于判断session变量是否注册.

5.函数session_destroy()主要用于在系统注销和退出时,销毁所有的session变量,它没有参数,直接调用即可。

Session与PHP.ini的关系配置

1,session.save_handler = file

用于读取/回写session数据的方式,默认是files。它会让PHP的session管理函数使用指定的文本文件存储session数据

2,session.save_path = “/xammp/temp/”

指定保存session文件的目录,可以指定到别的目录,但是指定目录必须要有httpd守护进程属主(比如apache或www等)写权限,否则无法回存session数据。它还可以写成这样session.save_path = “N;/path” 其中N是整数。这样使得不是所有的session文件都保存在同一个目录中,而是分散在不同目录。这对于服务器处理大量session文件是很有帮助的。(注:目录需要自己手工创建)

3,session.auto_start = 0

如果启用该选项,用户的每次请求都会初始化session。不推荐使用,最好通过session_start()显示地初始化session。

以上所述就是本文的全部内容了,希望大家能够喜欢。

php实现网站顶踩功能的完整前端代码 许多网站都支持顶、踩功能,以便于显示用户对当前网页内容的满意度反馈。下面我们给出本站使用的顶、踩功能的完整前台实现代码,以便于用户参

php实现上传图片文件代码 代码很简单,这里我们就不多废话了,直接奉上源码php//注册表单的姓名$name="";$nameErr="";if($_SERVER["REQUEST_METHOD"]=="POST"){if(empty($_POST['name'])){}else{$name=$_POST[

详解PHP错误日志的获取方法 在PHP中错误日志的获取方法有很多种,下面我给大家简单介绍下遇到此类问题如何解决,下面通过代码给大家展示下,希望能够帮助到大家。phperror_repor

标签: cookie 区别

本文链接地址:https://www.jiuchutong.com/biancheng/275606.html 转载请保留说明!

上一篇:如何在旧的PHP系统中使用PHP 5.3之后的库(如何在旧的php系统中删除)

下一篇:php实现网站顶踩功能的完整前端代码(php网页爬虫)

  • 动态市盈率与静态市盈率区别百度百科
  • 预交所得税分录怎么写
  • 企业增值税必须退税吗?
  • 餐饮发票数量单价必须填吗
  • 买二手设备还需要备案吗
  • 代缴水电费如何做账
  • 发票查验是什么字体
  • 房产税当月计提额怎么算
  • 事业单位建账期初数银行存款余额填在哪个科目
  • 一次还本付息债券到期收益率
  • 发票已入账跨年可以红冲重开吗
  • 如何判断境内企业所得税
  • 分公司给总公司管理费的会计分录
  • 对境外支付佣金的规定
  • 外币报表折算差额怎么算
  • 调整期初数怎么做会计分录
  • 变动成本率的计算公式字母
  • 家政公司可以开专票吗
  • 专票当普票入帐有问题吗
  • 公司用库存商品怎么做账
  • windows10 20h2 2004
  • 怎么用苹果6splus
  • 出口货物收汇核销流程
  • win没有投影到此电脑怎么办
  • php curl_init
  • 员工的收入
  • 补提去年的所得税费用是怎么做分录?
  • 提供劳务收入如何核算
  • 买保险公司的养老保险合适吗
  • 房地产企业营改增是哪一年
  • 跨年调整收入增值税怎么办
  • phpstudy配置
  • 定额材料损耗的计算公式
  • 金蝶kis迷你版银行存款二级科目
  • 框架如何使用
  • npm安装node指定版本
  • javascript数据类型
  • Node.js安装过程
  • vue $函数
  • 共享主机和vps
  • 货币盘盈盘亏账怎么算
  • 还贷款的卡有利息吗
  • 即征即退实际退税额35栏可以不填吗
  • 销售折扣收货方法有哪些
  • 旅游费记入什么科目
  • 为什么费用报销先由主管部门审批在由财务审核
  • SQLServer2005 XML数据操作代码
  • mysql的主从
  • 改良生产线发生的职工薪酬计入期间费用
  • 单位买车和个人买车交税有何不同
  • 小规模开发票免税如何记账?
  • 外币资产汇兑损失计算公式
  • 货款客户给的电话怎么查
  • 经济补偿金如何做账
  • 物流公司贷款
  • 增值税专用发票查询系统官方网站
  • 跨年度暂估成本的账务处理
  • 公司建账初期做账怎么做
  • sql语句查询去重
  • win7 双击不能打开文件
  • xp桌面右键选项消失
  • xp系统电脑开机密码忘记了
  • 将Red Hat 9.0 CD iso合成一张DVD iso的方法
  • win10计算机管理器
  • shpc32.exe - shpc32是什么进程 有什么用
  • opengl 生成图片
  • 每日十条简短新闻
  • nodejs获取客户端ip地址
  • android图片布局
  • unity集训
  • win10复制c盘到新硬盘
  • python对excel操作真的有提高吗
  • angular页面加载完后执行方法
  • 会用python
  • jquery中绑定和解绑的事件有哪些
  • Android SimpleAdapter
  • 资产划转是什么会计科目
  • 公允价值变动损益属于什么科目
  • 残疾人就业保障金怎么申报
  • 青岛个人所得税咨询电话是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设