PHP开发中session应用详解
_open();//开始session echo $welcome;//显示第一页中定义的$welcome page_close();//保存状态信息 ?> 注册完一个变量,当页面最后调用page_close()函数后,各个session变量会被写回到数据库中。如果忘记调用page_close()函数的话,变量就不会被写回数据库,这样将出现不可预知的后果。当变量被使用完毕,不再需要用到时,可以调用以下函数将变量删除: <?php 在PHP4版本中是如何实现session的? php4的session也靠cookies保存session id,用文件系统保存变量(默认情况下),因此,它的session变量不能保存对象。当然也可以将session保存在数据库中。 在php4中有关session的函数很多(详见php.ini配置一文),通常情况下我们只需要调用三个函数即可:sesssion_start()、session_register()、session_is_registered()。 在需要用到session的每一页的最开始处调用session_start()函数, 例如: <?session_start()?> php4中session处理的定制 我们需要扩充6个函数: ·sess_open($sess_path, $session_name); 这个函数被session处理程序调用来作初始化工作。 ·sess_close(); 这个函数在页面结束执行并且session处理程序需要关闭时被调用 ·sess_read($key); 这个函数在session处理程序读取指定session键值($key)时,检索并返回标识为$key的session数据.(注意:序列化是将变量或对象在程序结束或需要时保存在文件中,在下次程序运行或需要时再调入内存的技术,有别于只保存数据的方法。) ·sess_write($key, $val); 这个函数据在session处理程序需要将数据保存时调用,这种情况经常在程序结束时发生。它负责将数据保存在下次能用sess_read($key)函数检索的地方。 ·sess_destroy($key); 这个函数在需要消毁session时。它负责删除session并且清除环境。 ·sess_gc($maxlifetime); 这个函数负责清理碎片。在这种情况下,它负责删除过时的session数据。session处理程序会偶尔调用它们。 定制程序可以用mysql数据库或DBM文件保存session数据,视具体的情况而定。如果使用mysql作支持,那还需要进行以下的步骤: 首先在mysql中创建一个sessions数据库,并且创建一个sessions表: mysql> CREATE DATABASE sessions; 下一步,修改session_mysql.php文件的$SESS_DB* 变量使其匹配你机器上的数据库设置: <? |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |