php session详解

时间:2021-06-16 20:36:50
<?php
/*
*
session_abort — Discard session array changes and finish session
舍弃会话序列变化和结束会话 session_cache_expire — 返回当前缓存的到期时间
session_cache_limiter — 读取/设置缓存限制器
session_commit — session_write_close 的别名
session_decode — 解码会话数据
session_destroy — 销毁一个会话中的全部数据
session_encode — 将当前会话数据编码为一个字符串
session_get_cookie_params — 获取会话 cookie 参数
session_id — 获取/设置当前会话 ID
session_is_registered — 检查变量是否在会话中已经注册
session_module_name — 获取/设置会话模块名称
session_name — 读取/设置会话名称
session_regenerate_id — 使用新生成的会话 ID 更新现有会话 ID
session_register_shutdown — 关闭会话
session_register — Register one or more global variables with the current session
* 注册一个或者多个全乎变量给当前会话 本函数已自 PHP 5.3.0 起废弃并将自 PHP 5.4.0 起移除。
*
session_reset — Re-initialize session array with original values
* 重新初始化会话阵列的原始值
*
session_save_path — 读取/设置当前会话的保存路径
session_set_cookie_params — 设置会话 cookie 参数
session_set_save_handler — 设置用户自定义会话存储函数
session_start — 启动新会话或者重用现有会话
session_status — Returns the current session status
* 返回当前会话状态
*
session_unregister — Unregister a global variable from the current session
* 从当前会话注销一个全局变量
*
session_unset — Free all session variables
* 释放所有会话变量,其实就是释放变量占用内存
*
session_write_close — Write session data and end session
* 写会话数据和结束会话
*
*
*
*
* msession很多人在读官方手册的时候,会看到这个是做一个session一致性管理的api,借助msession服务器统一管理session
* 但是就目前2015年3月27日14:15:19,php官方的pecl已经不再维护这个扩展包了,原作者貌似已经开发了另一个东西MCache
* 现在是2.0版本
* http://www.mohawksoft.org/?q=node/8
* 有兴趣的可以去看下,但是就现在来说,目前想一致性管理session,可以使用memcache,memcached或者redis来管理,
* 就性能而言memcache比redis强,但是在不在意session数据失效的项目来说,也就是因为memcache崩溃需要再次读取原先数据的项目
* memcache首选,在需要session数据管理调用比较强的项目来说redis更好,因为有快照恢复功能
* 如何让memcache或者redis接收php的session的句柄,百度一下,配置很简单
*
*
*/ //有些人说要session_start();必须顶行写,其实不必,只要前面没有类似ob系类函数的操作就行,因为PHP 内部会调用会话管理器的 open 和 read 回调函数 //echo 'hello';
//session_start();
//$_SESSION [ 'favcolor' ] = 'green' ;//存数值
//$_SESSION [ 'animal' ] = 'cat' ;
//$_SESSION [ 'time' ] = time();
//
// //
////echo $_SESSION [ 'time' ] ;//打印数值
//
//
////var_dump($r);
//session_unset();//注销所有变量
//session_destroy();//销毁会话
//
// //session_cache_limiter('private');//读取/设置缓存限制器
//$cache_limiter = session_cache_limiter();
///* 设置缓存过期时间为 30 分钟 */
//session_cache_expire(30);//返回当前缓存的到期时间
//$cache_expire = session_cache_expire();
///* 开始会话 */
//session_start();
//echo $cache_limiter;
//echo $cache_expire; //session_start();
//$d = $_SESSION [ 'time' ] = time();
//$_SESSION [ 'zx' ] ="zx";
//// store our current session
//$r= session_encode();//序列化所有的$_SESSION的数据,不是加密
//print_r($r);
//echo '<br>';
//
//session_decode($d);
//print_r($d);
//echo '<br>';
//print_r(session_status());
//echo '<br>';
//print_r(session_get_cookie_params());//获取会话 cookie 参数
//echo '<br>';
//
//echo session_id();//id值
//echo '<br>';
//
//
//echo session_module_name();//获取/设置会话模块名称
//
//
//echo session_name();//函数返回当前会话名称 //session_start(); //session_save_path();//设置session的保存路径,一般不要设置,,在服务器的php.ini里面设置
//
//session_set_save_handler($open, $close, $read, $write, $destroy, $gc);//也是同上,设置session的句柄 //session_set_cookie_params($lifetime, $path, $domain, $secure, $httponly);//原因同上