php session_id() session_name()
1.Session.use_cookies:默认值为"1",代表SessionID使用Cookie来传递,反之就是用Query_String来传递
2.Session.name:这个就是SessionID储存的变量名称,可能是Cookie来传递,也可能是Query_String来传递,默认值是"PHPSESSID"
3.Session.cookie_lifetime:这个代表SessionID在客户端Cookie储存的时间,默认值是“0”,代表浏览器一关闭,SessionID就作废,就是因为这个原因,所以Session不能永久使用
4.Session.gc_maxlifetime:这个是Session数据在服务器端储存的时间,如果超过这个时间,那么Session数据就自动删除
1.把"Session.use.cookies"设置为"1",打开Cookie储存SessionID,不过默认值为"1",一般不用修改
2.把"Session.cookie_lifetime"改为“3600”,代表1小时后SessionID作废
3.把“Session.gc_maxlifetime”设置为和"Session.cookie_lifetime"一样,代表超过这个时间Session数据就自动删除
<?php
Session_start();
Session_register('num');
$num++;
echo "$num";
?>
<?php
Session_start();
Session_register('num');//注册Session变量num
if(isset($PHPSESSID)){
Session_id($PHPSESSID);
}//如果设置了$PHPSESSID,就将SessionID赋值为$SESSID,否则生成SessionID
$PHPSESSID=Session_id();//取得当前的SessionID
$num++;//变量num加1
SetCookie('PHPSESSID',$PHPSESSID,time()+3600);//储存SessionID到Cookie,一小时后失效
echo "$num";// 显示Session变量num的值
?>
SetCookie函数的原型日下:
int SetCookie(string name,string value,int expire,string path,string domain,int secure);
其中各个参数的意义如下:
name:表示要设置的Cookie的名称
value:表示要设置的Cookie的值,如果这个参数的值为空字符串,则表示删除浏览器中这个Cookie的资料
expire:表示该Cookie的有效时间
path:为该Cookie的相关路径
domain:表示Cookie的网站
secure:这个参数需要https的安全传输时才有效
SetCookie("user","lee",time()+3600);//带失效时间的Cookie
SetCookie("user","lee",time()+3600,"/php/");//带路径的Cookie
session_start
初始 session
语法: boolean session_start(void);
传回值: 布林值
函式种类: 资料处理
内容说明:本函式初始化一个新的 Session,若该客户已在 Session 之中,则连上原 Session。本函式没有参数,且传回值均为 true。
session_destroy
结束 session
语法: boolean session_destroy(void);
传回值: 布林值
函式种类: 资料处理
内容说明:本函式结束目前的 Session。本函式没有参数,且传回值均为 true。
session_name
存取目前 session 名称
语法: string session_name(string [name]);
传回值: 字串
函式种类: 资料处理
内容说明:本函式可取得或者重新设定目前 Session 的名称。若无参数 name 则表示单单获取目前 Session 名称,加上参数则表示将 Session 名称设为参数 name。
使用范例:下面的范例为 Session 片段程式
<?php
$username = "guest" ;
if(isset( $username )) {
session_name ( $username );
}
echo "您是 " . session_name (). "/n" ;
?>
session_module_name
存取目前 session 模组。
语法: string session_module_name(string [module]);
传回值: 字串
函式种类: 资料处理
内容说明:本函式可取得或者重新设定目前 Session 的模组。若无参数 module 则表示只获取目前 Session 的模组,加上参数则表示将 Session 模组设为参数 module。
session_save_path
存取目前 session 路径。
语法: string session_save_path(string [path]);
传回值: 字串
函式种类: 资料处理
内容说明:本函式可取得或者重新设定目前存放 Session 的路径。若无参数 path 则表示只有取得目前 Session 的路径目录名,加上参数 path 则表示将 Session 存在新的 path 上。
session_id
存取目前 session 代号。
语法: string session_id(string [id]);
传回值: 字串
函式种类: 资料处理
内容说明:本函式可取得或者重新设定目前存放 Session 的代号。若无参数 id 则表示只有取得目前 Session 的代号,加上参数则表示将 Session 代号设成新指定的 id。输入及传回均为字串。
session_register
注册新的变数。
语法: boolean session_register(string name);
传回值: 布林值
函式种类: 资料处理
内容说明:本函式在全域变数中增加一个变数到目前的 Session 之中。参数 name 即为欲加入的变数名。成功则传回 true 值。
session_unregister
删除已注册变数。
语法: boolean session_unregister(string name);
传回值: 布林值
函式种类: 资料处理
内容说明:本函式在目前的 Session 之中删除全域变数上的变数。参数 name 即为欲删除的变数名。成功则传回 true 值。
session_is_registered
检查变数是否注册。
语法: boolean session_is_registered(string name);
传回值: 布林值
函式种类: 资料处理
内容说明:本函式可检查目前的 Session 之中是否已有指定的变数注册。参数 name 即为欲检查的变数名。成功则传回 true 值。
session_decode
Session 资料解码。
语法: boolean session_decode(string data);
传回值: 布林值
函式种类: 资料处理
内容说明:本函式可将 Session 资料解码。参数 data 即为欲解码的资料。成功则传回 true 值。
session_encode
Session 资料编码。
语法: boolean session_encode(void);
传回值: 布林值
函式种类: 资料处理
内容说明:本函式可将 Session 资料编码,编码以 ZEND 引擎做杂凑编码。本函式没有参数。成功则传回 true 值。