php cookie及session
1.会话控制概括
1)http协议的缺陷
无状态,就是无记忆,不能让同一浏览器和服务器进行多次数据交换时,产生业务的连续性,
2)什么是会话控制
会话控制就是解决http无记忆缺陷的,能够==将数据持久化的保存在客户端(浏览器)或者服务端==,从而让浏览器和服务器尽心==进行多次数据交换时产生连续性.
3)会话控制的分类
分为两种:cookie(客户端)和session(服务器端)
2.cookie技术
1)什么是cookil?
cookil是将数据持久化存储到客户端的一种技术.
网站可以将数据写在浏览器中.一个网站最多能在一个浏览器写20个coolie.
一个浏览器能够设置的总cookie数最多为300个,每个不能超过4kb.
cookie既能保存在文件中,也能保存在内容中.
2)设置/读取cookie
=>1) 设置cookie
setcookie(var1 , var2, var3);
var1: cookie的名称
var2: 名称对应的值, 可选参数
var3: cookie的有效期, 可选参数
=>2)读取coolie值
使用php的超全局变量 $_COOKIE进行读取
=>3)cookie有效期
setcookie函数的参数3可以控制cookie有效期
参数3设置为-1 或者 不设置,关闭浏览器即失效
参数3设置为 time()+秒数,则在当前时间点的多少秒之后失效
=>4)cookie的有效范围
setcookie函数还有参数4、5,可以用来控制cookie的有效访问,但是一般不用
=>5)cookie删除
setcookie函数第二个参数设置为null,就可以删除cookie
3.session技术
1)session介绍
因为cookie是保存在客户端的数据,不够安全,所以出现了session。session会将数据保存到服务器端(保存在文件、内存服务器或数据表中),安全性就可以得到保证。
2)设置/读取session
php使用session时,首先要使用session_start()函数来开启session.
$_SESSION 超全局变量就能设置和读取session中的内容
3)session的作用范围
在当前网站的任何一个页面设置过session,则该网站的所有页面都能得到给session的数据
4)session的有效期
浏览器关闭时,session消失
5) 删除session
unset($_SESSION['name'] //删除单个session
session_destroy(); //删除所有session
4.session和cookie总结
cookie小结:
1) 将数据保存在客户端,安全性不好,但是可以保存的数据量较大。
2) 设置cookie使用 setcookie(var1, var2, var3)
var1: cookie名称
var2: 名称对应的值
var3: 有效期。 可选参数,如果不设置该值或者设置为-1,浏览器关闭则cookie消失;time() + 3600
3) 使用$_COOKIE 预定义数组来读取cookie
4) cookie的有效范围: 当前目录及子目录;上级目录无效
5) 删除cookie: setcookie(‘name’, null);
session小结
1) 将数据保存在服务器端,安全性高,但是不能保存大量的数据。一般来讲session当中保存的都是用户信息。
2) 使用session时,首先要使用 session_start函数开启session
3) 设置和读取session时,都是用$_SESSION['name'] = 'zs'; $_SESSION['name'];
4) session的有效范围,在一个域名下设置session,在整个域名范围内都有效
5) session有效期: 关闭浏览器,session就消失
6) 删除session
unset($_SESSION[‘name’]); //删除单个
sessionsession_destroy(); //删除所有session
php cookie及session的更多相关文章
- Cookie和Session的总结
1.开篇 在之前学习这一段的时候我一直有点没弄清楚,其实对Session这块的理解还可以,但是Cookie感觉始终还是欠缺点火候.之后的很长一段时间都基本上很少用Cookie了,渐渐的也淡忘了这一块的 ...
- java的会话管理:Cookie和Session
java的会话管理:Cookie和Session 1.什么是会话 此处的是指客户端(浏览器)和服务端之间的数据传输.例如用户登录,购物车等 会话管理就是管理浏览器客户端和服务端之间会话过程产生的会话数 ...
- Cookie和Session的那些事儿
Cookie和Session都是为了保持用户的访问状态,一方面为了方便业务实现,另一方面为了简化服务端的程序设计,提高访问性能.Cookie是客户端(也就是浏览器端)的技术,设置了Cookie之后,每 ...
- django的cookie和session以及内置信号、缓存
cookie和session cookie和session的作用: cookie和session都记录了客户端的某种状态,用来跟踪用户访问网站的整个回话.两者最大的区别是cookie的信息是存放在浏览 ...
- Cookie和Session的区别
前言 HTTP是一种无状态的协议,为了分辨链接是谁发起的,就需要我们自己去解决这个问题.不然有些情况下即使是同一个网站我们每打开一个页面也都要登录一下.而Session和Cookie就是为解决这个问题 ...
- 本地数据Store。Cookie,Session,Cache的理解。Timer类主要用于定时性、周期性任务 的触发。刷新Store,Panel
本地数据Store var monthStore = Ext.create('Ext.data.Store', { storeId : 'monthStore', autoLoad : false, ...
- Cookie与Session
再说Cookie与Session之前,先要了解一下http协议. 何为http协议: http协议即超文本传输协议,一种基于浏览器请求与服务器响应的协议,该协议主要的特点就是它是一种无状态的协议(只针 ...
- 【转】Cookie和Session区别和联系详解
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端 ...
- 理解Cookie和Session机制(转)
目录[-] Cookie机制 什么是Cookie 记录用户访问次数 Cookie的不可跨域名性 Unicode编码:保存中文 BASE64编码:保存二进制图片 设置Cookie的所有属性 Cookie ...
- cookie 和session 的区别详解
这些都是基础知识,不过有必要做深入了解.先简单介绍一下. 二者的定义: 当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择, 都纪 ...
随机推荐
- 响应式Web设计与CSS(下)
4.媒体类型与媒体查询 4.1 媒体类型 依据设备能力来分离样式的能力,始于媒体类型. 媒体类型用于针对特定的环境应用样式,包括屏幕显示.打印和电视等. 通过给link元素添加media属性,可以指定 ...
- Springboot日志LOGO改变和设计
每次启动Springboot的时候,SpringBoot都会打印一个LOGO,那么这个LOGO是可以关闭和改变的. 1.关闭Springboot的LOGO 2.改变Springboot的日志LOGO ...
- 【Redis】Redis开篇与如何安装单机版Redis,这次我会了!!
写在前面 很早之前,就有不少小伙伴微信留言说:冰河,你能不能写一个Redis专栏啊,我最近在学习Redis,看书看不下去,学习视频又觉得视频太长了,还是看你的文章比较给力!哈哈,原来我写的文章能够让小 ...
- 用它5分钟以后,我放弃用了四年的 Flask
有一个非常简单的需求:编写一个 HTTP接口,使用 POST 方式发送一个 JSON 字符串,接口里面读取发送上来的参数,对其中某个参数进行处理,并返回. 如果我们使用 Flask 来开发这个接口,那 ...
- LeetCode 873. 最长的斐波那契子序列的长度 题目详解
题目详情 如果序列 X_1, X_2, ..., X_n 满足下列条件,就说它是 斐波那契式 的: n >= 3 对于所有 i + 2 <= n,都有 X_i + X_{i+1} = X_ ...
- golang 复数
目录 1.声明/赋值/初始化 2.类型 3.取虚实部数值 4.运算 5.注意 跳转 1.声明/赋值/初始化 var name complex128 =complex(x,v) name := comp ...
- Lombok使用指南
一.Lombok 简介 Lombok 是一款 Java 开发插件,使得 Java 开发者可以通过其定义的一些注解来消除业务工程中冗长和繁琐的代码,尤其对于简单的 Java 模型对象(POJO).在开发 ...
- 简述python中`functools.wrapper()
简述python中functools.wrapper() 首先对于最简单的函数: def a(): pass if __name__ == '__main__': print(a.__name__) ...
- Java并发--三大性质
一.多线程的三大性质 原子性:可见性.有序性 二.原子性 原子性介绍 原子性是指:一个操作时不可能中断的,要么全部执行成功要么全部执行失败,有着同生共死的感觉.即使在多线程一起执行的时候,一个操作一旦 ...
- SpringBoot整合Redis并完成工具类
SpringBoot整合Redis的资料很多,但是我只需要整合完成后,可以操作Redis就可以了,所以不需要配合缓存相关的注解使用(如@Cacheable),而且我的系统框架用的日志是log4j,不是 ...