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. php 中文字符串反转

    /** * * 中文字符串倒序 * @param str $str * return str **/ function str_en_desc($str){ $len=mb_strlen($str); ...

  2. Javascript的常见数据类型以及相应操作

    JavaScript概述 1 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织E ...

  3. python基础之变量以及if语句

    1.变量 1.1定义:变量是一种介质,是将一些值暂时存储在内存中,方便后续程序调用.可将其看作容器但其内部的东西是可变化的. 1.2 变量的命名规则: 1.变量的命名只能由数字,字母,下划线构成. 2 ...

  4. IQC来料检验报表

    ***************************************************************** * System : XXXXXXXXX * Module : QM ...

  5. 用swoole简单实现MySQL连接池

    MySQL连接池 在传统的网站开发中,比如LNMP模式,由Nginx的master进程接收请求然后分给多个worker进程,每个worker进程再链接php-fpm的master进程,php-fpm再 ...

  6. PHP手册-函数参考-日期与时间相关扩展

    一.Calander.日期/时间.HRTime扩展的对比   Calendar 日期/时间 HRTime 简介 历法扩展集包括了一系列用于在不同历法间进行转换的函数,它是以Julian Day计数为中 ...

  7. Fastjson, Gson, org.json.JSON三者对于JSONObject及JSONArray的判断

    1.Fastjson 我们通常在已知格式的情况下直接使用JSONObject,JSONArray,但是如果遇到需要判断格式呢? try{ Object object = JSON.parse(a); ...

  8. JavaScript构造函数详解

    构造函数就是初始化一个实例对象,对象的prototype属性是继承一个实例对象. 构造函数注意事项: 1.默认函数首字母大写 2.构造函数并没有显示返回任何东西.new 操作符会自动创建给定的类型并返 ...

  9. #pragma 处理警告 clang diagnostic 的使用

    首先#pragma在本质上是声明,常用的功能就是注释,尤其是给Code分段注释:而且它还有另一个强大的功能是处理编译器警告,但却没有上一个功能用的那么多. clang diagnostic 是#pra ...

  10. [LeetCode] 111. Minimum Depth of Binary Tree ☆(二叉树的最小深度)

    [Leetcode] Maximum and Minimum Depth of Binary Tree 二叉树的最小最大深度 (最小有3种解法) 描述 解析 递归深度优先搜索 当求最大深度时,我们只要 ...