有没有更好的方法来跟踪不同页面中的会话变量创建/访问?

时间:2010-03-12 19:08:34

标签: php

这就是我正在做的事情。在我的网站上,我有多个进程,每个进程包含多个步骤。现在,在其中一个进程中,在继续执行该进程的下一步之前,会执行错误检查例程。会话var设置为指示错误状态,它将重定向回引用者或显示下一页的内容。

现在,我认为这种功能在整个Web开发过程中很常见。发生的问题是会话变量留在周围并且没有正确清理。有时这会引入不希望的行为。我的网站正在增长,我发现我需要越来越多的会话变量来跟踪不同的系统和错误状态。

所以我正在考虑创建一种“会话变量管理器”来跟踪会话变量的使用情况。这个想法很简单。它将具有上下文的概念(例如,注册过程)并允许访问该上下文中的预定义的一组会话变量。此外,var和context将与一个动作配对,以进行某种形式的事件处理。

所以如果你没有注意到我是网络开发的新手。 对我提出的想法的任何想法或评论都将不胜感激。后端用PHP / MySQL编写。

2 个答案:

答案 0 :(得分:2)

在PHP中,会话存储为对象(也称为数组)。有了这些,您可以存储多个维度的数据。那么为什么不开始以下列格式存储会话变量:

$_SESSION[$context][$var] = $value;
// Example: $_SESSION['registration']['laststep'] = 4;

答案 1 :(得分:0)

最好不要使用会话变量。对Web应用程序的所有请求都应包含足够的信息,无需额外的服务器端状态即可处理。这是RESTful architectural style

的基础

More Discussion在网站上提供了一个优秀的开源RESTful PHP框架,您可能希望了解它。