博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php session 和cookie
阅读量:5092 次
发布时间:2019-06-13

本文共 1946 字,大约阅读时间需要 6 分钟。

先简单的说明下session和cookie的区别。

1.session存放在服务器的文件中,或者是内存中。而cookie存在客服端。

2.session比cookie安全

3.session存放在服务器端,减少了客服端和服务器端之间的来回传输

4.session的生命周期是发呆时间,即当用户访问使用session,重新计算。cookie的周期是一定的,到时间会自己销毁

cookie

cookie

Cookie 是客户端技术,服务器把每个用户的数据以cookie的形式写给各自的浏览器

默认的cookie文件目录 C:\Documents and Settings\Administrator\cookie文件夹下

创建cookie的方法

 

setcookie("name","value","time");//name指的是cookie的名称。value指的是cookie的值,time指的是生命周期
View Code

 

获取cookie的值

$_COOKIE['name']//name 指的是cookie名字//cookie的清除setcookie("name","","time")//设置生命周期小于当前时间即可。

 

session

Session 是一个服务器端技术,利用这个技术,为某个用户的浏览器创建一个独享的session文件

由于session为用户浏览器 独享。

一个会话对应一个session文件

 

Session的默认文件路径 c:/windows/temp/

可以通过session_save_path更改

 

//创建sessionsession_start();$_SESSION['name']=value;////session的删除unset($_SESSION[]);

 

 

SESSION保存的数据格式

name|s:4:"TEST"; 

name就是key值 

表示数据类型

表示数据的大小

Session 可以保存所有的基本数据类型(dobule int object array string等)

 

 

 

 

要使用session时,要初始化 session_start()

 

session_destroy();//会把对应的session文件删掉

 

Session的细节讨论

 

Session数据默认存放的时间是1440sphp.in 可以配置的

 

session.gc_maxlifetime = 1440这个时间是在1440内没有使用session文件,该session才会被视为垃圾。从而被回收,

 

Session存放路径

 

;session.save_path = "/tmp"

 

Session cookie的区别

 

存放的地方不一样

 

在使用session的时候要使用session_start();

 

php.in session,auto_start=1会在某个页面添加session_start

 

 

 

如果客户主机禁止了cookie 怎么实现session技术共享多个页面

 

在每个链接的添加一个PHPSESSID同时 在每个页面加入

 

If(isset($_GET[PHPSESSIONID])){

 

Session_id()

 

}

 

Session_star();

 

(2)使用常量SID

 

(3)使用启用是否透明的sid支持。即可,这样设置,

 

session.use_trans_sid = 1

 

 

Session.name 用于设置设置session的名字

可以通过session_name()获取

默认配置的

session.name = PHPSESSID

session.use_trans_sid = 0 如果启用

说明会给每个url加上一个PHPSESSID

session_sava_path

 配置网站的session文件路径

session.gc_probability = 1

session.gc_divisor     = 100

session.gc_maxlifetime = 1440 最大的生命周期 是发呆时间。

垃圾回收机制 会删除千分之一的几率

session.gc_probability /session.gc_divisor 

上面三个配置共同作用。

session.cookie_lifetime = 0

cookie 的生命周期默认是表示关闭浏览器就消失、

自定义会话处理器

php.in设置一下

Session.save.handler();

session.save_handler = files/user/

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/tl542475736/p/3493163.html

你可能感兴趣的文章
MAC 上升级python为最新版本
查看>>
创业老板不能犯的十种错误
查看>>
Animations介绍及实例
查看>>
判断请求是否为ajax请求
查看>>
【POJ2699】The Maximum Number of Strong Kings(网络流)
查看>>
spring boot配置跨域
查看>>
BZOJ 1996 合唱队(DP)
查看>>
进击吧!阶乘——大数乘法
查看>>
安卓学习资料推荐-25
查看>>
Mysql数据库备份和还原常用的命令
查看>>
关于退出当前页面在火狐的一些问题
查看>>
【项目实施】项目考核标准
查看>>
spring-aop AnnotationAwareAspectJAutoProxyCreator类
查看>>
经典入门_排序
查看>>
Redis Cluster高可用集群在线迁移操作记录【转】
查看>>
二、spring中装配bean
查看>>
VIM工具
查看>>
javascript闭包
查看>>
@Column标记持久化详细说明
查看>>
创建本地yum软件源,为本地Package安装Cloudera Manager、Cloudera Hadoop及Impala做准备...
查看>>