echo $ _SESSION [“column”]和row [“column”]之间有什么区别?

时间:2015-07-26 20:08:15

标签: php mysql session

我是编码的新手,所以请耐心等待。

我的项目涉及显示大量用户提交的信息,并且想知道在显示这些信息方面两者之间是否存在实质性差异。我理解会话变量是“临时的”,但我觉得会话变量在多大程度上可以显示信息。

如果我希望用户看到彼此的信息,那么使用$_SESSION["column"]row["column"]来显示信息是否重要?

最后,会话会更好地用于登录验证和编辑个人信息吗?

1 个答案:

答案 0 :(得分:1)

要回答您的上一个问题,是的会话应该真正用于登录过程和用户​​数据更改。也就是说,用户数据更改后应立即进行会话销毁,并由系统进行某种形式的验证,以确保更改是合法的。例如,电子邮件地址更改后应至少验证新电子邮件,如果您的安全性更加严格,您也可能希望验证更改的合法性,可能是通过联系某些帐户持有人这种或那种方式暂时保持变化,直到收到确认。

在最基本的描述中,Sessions只是一个全局变量,但不应该这样使用。当他们认为会话就像PHP的一些强大功能时,新来者似乎变得吓坏了。果然它们是一个很好的强大功能,但不用担心。虽然如果它对您的安全性至关重要,请确保您知道如何使用它们,因为如果您错误地使用它们,它们确实能够让您失望。

如果您打算使用它们,您应该了解一些基本方面。这并不意味着你不能在没有它的情况下使用它们,例如在安全性确实没有问题的基本站点中,你只想传递任意数据,而不会从一个页面传递到另一个页面,那么你可以使用会话你真的必须,你会把会议当作一个全球性的对象,如果你也为了安全目的而积极地使用会话那么你不应该这样做。

当然,这会浪费会话的潜力,并且会增加资源膨胀,因为需要清理会话数据。清理(​​垃圾收集)之后必须运行以将其从系统中移除。

我希望这有助于为您概述会话的正确用法。

我只想再添加一件事,你可以研究一下,无论如何你会发现自己,但我想我会给你一个良好的开端。

我将简要地指出一件事。当你在php中设置一个变量时,只要脚本正在运行,它就是活动的并且最多可用,这意味着它使用的内存在脚本结束时释放,或者对于特定的变量,它应该被释放为一旦不再需要它。对于会话而言并非如此,其唯一目的是确保数据保持活跃。要从会话中删除部分数据,您可以覆盖特定部分。像这样的东西将是你所需要的。

$_SESSION['element_to_clear'] = null;

这将删除所选数据,并保持会话完好无损以供日后使用。

相关问题