比力模糊的是session_decode和session_encode:
bool session_decode(string data);
session_decode() decodes the session data in data, setting variablesstored in the session.
bool session_encode(void);
session_encode() returns a string with the contents of the currentsessionencoded within.
php manual里面好象没有相关的例子。从字面意思来看decode是把用户的串解析出来以后set到session里面,encode则是把session的数据“打包”返回给用户。这样看来encode的作用可能更大一些,用户register数据到session里面以后应该是用encode把数据取出来的,但是encode返回的对象仍需要处理惩罚,好比:
session_register("val1");
$val1 = "abcde"
session_register("val2");
$val1 = 1234
session_register("val3");
$val1 = 123.45
那么session_encode返回的对象是:
val1:s:5:"abcde";val2:i:1234;val3:d:123.45;
很明显,'s'是string,电脑维修技术,'i'和'd'是数字,'s'类型的变量需要长度。
如果你的session id是aaeebbcfd4455ec2c0d5cb590f8fab74,那么这串对象实际上是存在/tmp/aaeebbcfd4455ec2c0d5cb590f8fab74文件傍边