搜藏一点php session 常用方法

php中session的用法 


PHP中的session默认情况下是使用客户端的Cookie。当客户端的Cookie被禁用时,会自动通过Query_String来传递。 
Php处理会话的函数一共有11个,我们详细介绍一下将要用到几个函数。 

1 session.save_path 是保存session的路径


2 session.cookie_path 指定了要session会话 cookie 的有效路径   可查看setcookie第四参数关于cookie有效路径设置相关信息


3、 session_start 
函数功能:开始一个会话或者返回已经存在的会话。 
函数原型:boolean session_start(void); 
返回值:布尔值 
功能说明:这个函数没有参数,且返回值均为true。最好将这个函数置于最先,而且在它之前不能有任何输出,否则会报警,如:Warning: Cannot send session cache limiter - headers already sent (output started at /usr/local/apache/htdocs/cga/member/1.php:2) in /usr/local/apache/htdocs/cga/member/1.php on line 3 
4、 session_register 
函数功能:登记一个新的变量为会话变量 
函数原型:boolean session_register(string name); 
返回值:布尔值。 
功能说明:这个函数是在全局变量中增加一个变量到当前的SESSION中,参数name就是想要加入的变量名,成功则返回逻辑值true。可以用$_SESSION[name]或$HTTP_SESSION_VARS[name]的形式来取值或赋值。 
5、 session_is_registered 
函数功能:检查变量是否被登记为会话变量。 
函数原型:boobean session_is_registered(string name); 
返回值:布尔值 
功能说明:这个函数可检查当前的session之中是否已有指定的变量注册,参数name就是要检查的变量名。成功则返回逻辑值true。 
6、 session_unregister 
函数功能:删除已注册的变量。 
函数原型:boolean session_session_unregister(string name); 
返回值:布尔值 
功能说明:这个函数在当前的session之中删除全局变量中的变量。参数name就是欲删除的变量名,成功则返回true. 
7、 Session_destroy 
函数功能:结束当前的会话,并清空会话中的所有资源。 
函数原型:boolean session destroy(void); 
返回值:布尔值。 
功能说明:这个函数结束当前的session,此函数没有参数,且返回值均为true 
上面介绍函数下文将会用到,但还有一些有关session的函数也介绍一下: 
8、 session_encode 
函数功能:sesssion信息编码 
函数原型:string session_encode(void); 
返回值:字符串 
功能说明:返回的字符串中包含全局变量中各变量的名称与值,形式如:a|s:12:"it is a test";c|s:4:"lala"; a是变量名 s:12代表变量a的值"it is a test的长度是12 变量间用分号”;”分隔。 
9、 session_decode 
函数功能:sesssion信息解码 
函数原型:boolean session_decode (string data) 
返回值:布尔值 
功能说明:这个函数可将session信息解码,成功则返回逻辑值true 
10、 session_name 
函数功能:存取当前会话名称 
函数原型:boolean session_name(string [name]); 
返回值:字符串 
功能说明:这个函数可取得或重新设置当前session的名称。若无参数name则表示获取当前session名称,加上参数则表示将session名称设为参数name 
11、 session_id 
函数功能:存取当前会话标识号 
函数原型:boolean session_id(string [id]); 
返回值:字符串 
功能说明:这个函数可取得或重新设置当前存放session的标识号。若无参数id则表示只获取当前session的标识号,加上参数则表示将session的标识号设成新指定的id 
12、 session_unset 
函数功能:删除所有已注册的变量。 
函数原型:void session_unset (void) 
返回值:布尔值 
功能说明:这个函数和Session_destroy不同,它不结束会话。就如同用函数session_unregister逐一注销掉所有的会话变量。 

//常用设置

ini_set('session.save_path','/tmp/');

ini_set("session.cookie_domain",'.123.cn');

ini_set("session.save_handler", "user");

ini_set('session.cookie_lifetime', '1');
ini_set('session.gc_maxlifetime','1');

echo get_cfg_var("session.gc_maxlifetime");
echo get_cfg_var("session.cookie_lifetime");

session_set_cookie_params(1800 , '/', '.mydomain.com');

原文地址:https://www.cnblogs.com/code123/p/3357268.html