不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii 用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
PHP使用Session
编辑:dnawo 日期:2008-06-21
我们先来看看在ASP使用Session:
下边用PHP来实现上边的过程:
比较两个例子可以看出,PHP在使用Session上和ASP基本是差不多的。但在写这个例子的时候我有些搞不清session_unset和session_destroy的区别了,把上边例子中session_unset替换成session_destroy后,下边仍可输出Session的值,都彻底终结了怎么会还有值?后来在网上查到了它们的区别:
引用内容
其实ASP中Session.Contents.RemoveAll和Session.Abandon的区别,大概也就是这样子了。
复制内容到剪贴板
程序代码

<%
Session.Timeout = 20 '有效期20分钟
Response.Write(Session.SessionID + "<br/>")
Session("domain") = "mzwu.com"
Session("host_a") = "www.mzwu.com"
Session("host_b") = "bbs.mzwu.com"
Response.Write("------------------------------------------------<br/>")
if Session("domain")<>"" Then Response.Write(Session("domain") + "<br/>")
if Session("host_a")<>"" Then Response.Write(Session("host_a") + "<br/>")
if Session("host_b")<>"" Then Response.Write(Session("host_b") + "<br/>")
Session.Contents.Remove("domain") '删除Session变量
Response.Write("------------------------------------------------<br/>")
if Session("domain")<>"" Then Response.Write(Session("domain") + "<br/>")
if Session("host_a")<>"" Then Response.Write(Session("host_a") + "<br/>")
if Session("host_b")<>"" Then Response.Write(Session("host_b") + "<br/>")
Session.Contents.RemoveAll() '删除所有Session变量
Response.Write("------------------------------------------------<br/>")
if Session("domain")<>"" Then Response.Write(Session("domain") + "<br/>")
if Session("host_a")<>"" Then Response.Write(Session("host_a") + "<br/>")
if Session("host_b")<>"" Then Response.Write(Session("host_b") + "<br/>")
Session.Abandon() '彻底终结Session
%>
Session.Timeout = 20 '有效期20分钟
Response.Write(Session.SessionID + "<br/>")
Session("domain") = "mzwu.com"
Session("host_a") = "www.mzwu.com"
Session("host_b") = "bbs.mzwu.com"
Response.Write("------------------------------------------------<br/>")
if Session("domain")<>"" Then Response.Write(Session("domain") + "<br/>")
if Session("host_a")<>"" Then Response.Write(Session("host_a") + "<br/>")
if Session("host_b")<>"" Then Response.Write(Session("host_b") + "<br/>")
Session.Contents.Remove("domain") '删除Session变量
Response.Write("------------------------------------------------<br/>")
if Session("domain")<>"" Then Response.Write(Session("domain") + "<br/>")
if Session("host_a")<>"" Then Response.Write(Session("host_a") + "<br/>")
if Session("host_b")<>"" Then Response.Write(Session("host_b") + "<br/>")
Session.Contents.RemoveAll() '删除所有Session变量
Response.Write("------------------------------------------------<br/>")
if Session("domain")<>"" Then Response.Write(Session("domain") + "<br/>")
if Session("host_a")<>"" Then Response.Write(Session("host_a") + "<br/>")
if Session("host_b")<>"" Then Response.Write(Session("host_b") + "<br/>")
Session.Abandon() '彻底终结Session
%>
下边用PHP来实现上边的过程:
复制内容到剪贴板
程序代码

<?php
session_start();
ini_set("session.gc_maxlifetime", 1200); //有效期20分钟
echo session_id()."<br/>"; //SessionID
$_SESSION["domain"] = "mzwu.com";
$_SESSION["host_a"] = "www.mzwu.com";
$_SESSION["host_b"] = "bbs.mzwu.com";
echo "------------------------------------------------"."<br/>";
if(isset($_SESSION["domain"])) echo $_SESSION["domain"]."<br/>";
if(isset($_SESSION["host_a"])) echo $_SESSION["host_a"]."<br/>";
if(isset($_SESSION["host_b"])) echo $_SESSION["host_b"]."<br/>";
unset($_SESSION["domain"]); //删除Session变量
echo "------------------------------------------------"."<br/>";
if(isset($_SESSION["domain"])) echo $_SESSION["domain"]."<br/>";
if(isset($_SESSION["host_a"])) echo $_SESSION["host_a"]."<br/>";
if(isset($_SESSION["host_b"])) echo $_SESSION["host_b"]."<br/>";
session_unset(); //删除所有Session变量
echo "------------------------------------------------"."<br/>";
if(isset($_SESSION["domain"])) echo $_SESSION["domain"]."<br/>";
if(isset($_SESSION["host_a"])) echo $_SESSION["host_a"]."<br/>";
if(isset($_SESSION["host_b"])) echo $_SESSION["host_b"]."<br/>";
session_destroy(); //彻底终结Session
?>
session_start();
ini_set("session.gc_maxlifetime", 1200); //有效期20分钟
echo session_id()."<br/>"; //SessionID
$_SESSION["domain"] = "mzwu.com";
$_SESSION["host_a"] = "www.mzwu.com";
$_SESSION["host_b"] = "bbs.mzwu.com";
echo "------------------------------------------------"."<br/>";
if(isset($_SESSION["domain"])) echo $_SESSION["domain"]."<br/>";
if(isset($_SESSION["host_a"])) echo $_SESSION["host_a"]."<br/>";
if(isset($_SESSION["host_b"])) echo $_SESSION["host_b"]."<br/>";
unset($_SESSION["domain"]); //删除Session变量
echo "------------------------------------------------"."<br/>";
if(isset($_SESSION["domain"])) echo $_SESSION["domain"]."<br/>";
if(isset($_SESSION["host_a"])) echo $_SESSION["host_a"]."<br/>";
if(isset($_SESSION["host_b"])) echo $_SESSION["host_b"]."<br/>";
session_unset(); //删除所有Session变量
echo "------------------------------------------------"."<br/>";
if(isset($_SESSION["domain"])) echo $_SESSION["domain"]."<br/>";
if(isset($_SESSION["host_a"])) echo $_SESSION["host_a"]."<br/>";
if(isset($_SESSION["host_b"])) echo $_SESSION["host_b"]."<br/>";
session_destroy(); //彻底终结Session
?>
比较两个例子可以看出,PHP在使用Session上和ASP基本是差不多的。但在写这个例子的时候我有些搞不清session_unset和session_destroy的区别了,把上边例子中session_unset替换成session_destroy后,下边仍可输出Session的值,都彻底终结了怎么会还有值?后来在网上查到了它们的区别:

session_unset()
释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的session id。
session_destroy()
删除当前用户对应的session文件以及释放session id,内存中的$_SESSION变量内容依然保留。
释放当前在内存中已经创建的所有$_SESSION变量,但不删除session文件以及不释放对应的session id。
session_destroy()
删除当前用户对应的session文件以及释放session id,内存中的$_SESSION变量内容依然保留。
其实ASP中Session.Contents.RemoveAll和Session.Abandon的区别,大概也就是这样子了。
评论: 0 | 引用: 0 | 查看次数: 4325
发表评论
请登录后再发表评论!