php注册session变量和读取session的过程

时间:2016-07-31
在php中访问session变量,除了必须要启动session之外(session_start),还要经过注册的过程。注册和读取session变量,都要通过访问$_SESSION数组完成。本文章向大家介绍php注册session变量和读取session,需要的朋友可以参考一下。

在php中访问session变量,除了必须要启动session之外(session_start),还要经过注册的过程。注册和读取session变量,都要通过访问$_SESSION数组完成。自php4.1.0起,$_SESSION如同$_POST、$_GET或$_COOKIE等一样成为超级全局数组,但必须在调用session_start()函数开启session之后才能使用。与$HTTP_SESSION_VARS不同,$_SESSION总是有全局范围,因此不要对$_SESSION使用global关键字。在$_SESSION关联数组中的健名具有和PHP中普通变量名相同的命名规则。注册session变量代码如下所示:

<?php

   session_start();//启动session的初始化
   /* http://www.manongjc.com/article/1290.html */
   $_SESSION['username'] = "Joe";//注册session变量,赋值为一个用户的名称。
   $_SESSION['password'] = "123";//注册session变量,赋值为一个用户的密码。

?>

执行该脚本后,两个session变量就会被保存在服务器端的某个文件中。该文件的位置是通过php.ini文件,在session.save_path属性指定的目录下,为这个访问用户单独创建的一个文件,用来保存注册的session变量。例如,某个保存session变量的文件名为“sess_040958e2514bf112d61a03ab8adc8c74”,文件名中含session id,所以每个访问用户在服务器中都有自己的保存seeion变量的文件。而且这个文件可以直接使用文本编辑器打开,该文件的内容结构如下所示:

变量名|类型:长度:值;  //每个变量都使用相同的结果保存

本例在session中注册了两个变量,如果在服务器中找到为改用户保存session变量的文件,打开后可以看到如下内容:

username|s:3:"Joe";password|s:3:"123";