session是根据php.ini中的配置, 存储在 服务器端 ; 生成的sessionId ,也是根据 php.ini 的配置 存储在 客户端cookie中.

session的设置:

  • 存储方式:session.save_handler=files 文件
  • 存储路径(服务器中):session.save_path="D:\xampp\tmp"

sessionID(存储于cookie中, 浏览器上):

  • 是否将sessionId存储于cookie中: session.use_cookies=1
  • 是否仅使用cookie存储sessionId: session.use_only_cookies=1  .(还可以自动添加在url上)
  • 存储sessionId的cookie的名字: session.name=PHPSESSID
  • session是否自动加载: session.auto_start=0 (自动加载就不需要 session_start, 最好不开启自动加载)
  • 存储sessionId的cookie的生存时间: session.cookie_lifetime=0
  • 存储sessionId的cookie的url路径: session.cookie_path=/
  • 存储sessionId的cookie的域名:  session.cookie_domain=
  • 存储sessionId的cookie,是否仅是http访问:  session.cookie_httponly=

----

一:准备工作:

  • 目录a

    • session.php
    • getSession.php
    • test目录:
      • session1_1.php
      • session1_2.php
      • getSession1_1.php

----------

1.session.php

 <?php

 session_start();
$_SESSION["test"] = "this is a test"; ?>

------

2.getSession.php

 <?php

 session_start();
echo "<pre>";
echo '顶层'; var_dump($_SESSION); ?>

----------

3.session1_1.php

 <?php
session_start();
$_SESSION["test1_1"] = "this is test1_1";
unset($_SESSION["test2"]); ?>

--------

4.session1_2.php

 <?php
ini_set('session.cookie_path', '/test/')
session_start();
$_SESSION["test1_2"] = "this is test1_2"; ?>

--------

5.getSession1_1.php

 <?php

 session_start();
echo "<pre>";
echo "www.a.com/test/目录下";
var_dump($_SESSION);
?>

二.操作1

1. 先后 访问.   www.a.com/session.php 和 www.a.com/test/session1_1.php

2.访问 www.a.com/getSession.php

www.a.com/session.php  和 www.a.com/test/session1_1.php 中设置的 变量都可以获取.

3.访问 www.a.com/test/getSession1_1.php

www.a.com/session.php  和  www.a.com/test/session1_1.php 中 设置的变量 都可以访问到.

4. 查看. 服务器端的session保存路径: session.save_path="D:\xampp\tmp"

打开这个序列化的文件,查看:

test|s:14:"this is a test";test1_1|s:15:"this is test1_1";

我们在不同的目录下,设置了两次 session, 当时 服务器端保存session的文件 只有一个.

5. 查看 浏览器中 ,保存sessionId的 cookie

三:操作3.

1. 在 操作二的基础上, 继续 访问 www.a.com/test/session1_2.php

2.访问www.a.com/getSession.php

3.访问 www.a.com/test/getSession1_1.php

4. 服务器端存储的session.

文件名没有变化 ,修改时间 从 14:03 变为 14:16 .

  打开观察:

test|s:14:"this is a test";test1_1|s:15:"this is test1_1";test1_2|s:15:"this is test1_2";

增加了 test1_2 .

5. 查看 浏览器端cookie:

同操作二中的时间 ,没有任何变化.

------------------------------

php ,session 详解.的更多相关文章

  1. 【Hibernate】Hibernate系列2之Session详解

    Session详解 2.1.概述-一级缓存 2.2.操作session缓存方法 2.3.数据库隔离级别 2.4.持久化状态 2.5.状态转换 2.6.存储过程与触发器

  2. PHP5 session 详解【经典】 -- 转帖

    PHP5 session 详解[经典] http协议是WEB服务器与客户端(浏览器)相互通信的协议,它是一种无状态协议.所谓无状态,指的是不会维护http请求数据,http请求是独立的,非持久的.而越 ...

  3. Cookie与Session详解

    来源:<PHP核心技术与最佳实践> 列旭松 陈文 著 Cookie与Session详解读书笔记,从概念.操作.应用.注意事项以及区别等几方面详细阐述两者的基础知识,它们都是针对HTTP协议 ...

  4. orakill和ALTER SYSTEM KILL SESSION详解

    --orakill和ALTER SYSTEM KILL SESSION详解[转]-----------------------------------------2013/11/05 一个用户进程偶尔 ...

  5. 巨人大哥谈Web应用中的Session(session详解)

    巨人大哥谈Web应用中的Session(session详解) 虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术. ...

  6. 网络基础 http 会话(session)详解

    http 会话(session)详解 by:授客 QQ:1033553122 会话(session)是一种持久网络协议,在用户(或用户代理)端和服务器端之间创建关联,从而起到交换数据包的作用机制 一. ...

  7. JavaWeb Session详解

    代码地址如下:http://www.demodashi.com/demo/12756.html 记得把这几点描述好咯:代码实现过程 + 项目文件结构截图 + ## Session的由来 上一篇博文介绍 ...

  8. 引用 Session详解 作者:郎云鹏

    本文转载自leeldy<Session详解 作者:郎云鹏>   引用 leeldy 的 Session详解 作者:郎云鹏 目录: 一.术语session 二.HTTP协议与状态保持 三.理 ...

  9. ASP.NET Session详解(转)

    ASP.NET Session详解 本文章来自:http://blog.163.com/adam601@126/blog/static/22506317200932824210996/ 当用户在 We ...

  10. Session详解、ASP.NET核心知识(8)

    介绍一下Session 1.作用 Cookie是存在客户端,Session是存在服务器端,目的是一样的:保存和当前客户端相关的数据(当前网站的任何一个页面都能取到Session). 在本篇博文的姊妹篇 ...

随机推荐

  1. dp 二维乃至多维背包

    洛谷P1855 榨取kkksc03 分析:套路是很明显的01背包,但是这时受约束的变量有两个了,这种情况下就该用多维背包了 分析方法一样的,用dp[i][j][k]表示从前i个愿望中挑选总时间和总金钱 ...

  2. leetcode-algorithms-11 Container With Most Water

    leetcode-algorithms-11 Container With Most Water Given n non-negative integers a1, a2, ..., an , whe ...

  3. lombok @EqualsAndHashCode 注解的影响

    官方文档:@EqualsAndHashCode 原文中提到的大致有以下几点: 1. 此注解会生成equals(Object other) 和 hashCode()方法. 2. 它默认使用非静态,非瞬态 ...

  4. MSSQL数据库后台进程(线程)

    与Oracle数据库类似,微软数据库产品MSSQL也有诸多后台进程来保证数据库系统的高效正常运转,由于MSSQL采用的是线程模型,应该叫做后台线程,为了大家易于理解,我们在暂且称之为后台进程,下面我们 ...

  5. mac bash 下使用vi 快捷方式——因为没有alt键 所以没有办法 用vi模式也非常方便的

    set -o emacs ##切到emacs模式 set -o vi ##切到vi模式 set -o ## 查看当前选项的设置状态 所以你只需要在.bashrc下加入 set -o vi 然后,使用E ...

  6. PyCharm+QTDesigner+PyUIC使用教程

    我们在PyCharm安装配置Qt Designer+PyUIC教程中已配置好了PyCharm+QTDesigner+PyUIC环境 这里在此基上我们演示如何使用这些工具,编写一个图形界面程序: 程序主 ...

  7. mysql 语句根据身份证查询年龄,地址,性别

    select  case left(idcard,2) when '11' then '北京市'when '12' then '天津市'when '13' then '河北省'when '14' th ...

  8. Win10系列:VC++ Direct3D模板介绍1

    Visual Studio为开发Direct3D应用程序提供了便捷的模版,读者可以不必手动去新建Direct3D中所使用到的基础资源,而只需专注于图形的绘制.本小节主要为读者介绍这个模版中用于绘制图形 ...

  9. Win10系列:JavaScript 模板绑定

    WinJS库模板提供了一种格式化显示多条数据的便捷方式,通过这种方式可以将模板与ListView或FlipView等控件结合使用以控制数据的显示格式.定义一个WinJS库模板的方法与定义WinJS库控 ...

  10. (路-莫)-Python基础一

    一,Python介绍 1,python的出生与应用 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打 ...