echo $_SESSION["column"]和row["column"]有什


What is the difference between echo $_SESSION["column"] and row["column"]?

我是新手,所以请原谅我。

我的项目涉及显示大量用户提交的信息,我想知道两者在显示这些信息方面是否有实质性的区别。我理解会话变量是"临时的",但我对会话变量在多大程度上可以显示信息感到困惑。

如果我想让用户看到彼此的信息,用$_SESSION["column"]还是row["column"]显示信息有关系吗?

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

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

在其最基本的描述中,Sessions只是一个全局变量,但不应该这样使用。当新手认为会话是PHP的一个非常强大的方面时,他们似乎被吓坏了。当然,它们是一个很好的强大功能,但不是什么可怕的东西。但是,如果对您的安全至关重要,请确保您知道如何使用它们,因为如果您使用不当,它们确实有可能使您出错。

如果您打算使用它们,您应该真正了解它们的潜在方面。这并不意味着你不能没有它,使用它们在一个安全的基本网站例如真的不是一个问题,你只是想通过任意数据没有安全问题从一个页面到另一个,那么你可以使用会话,如果你真的要,您将把会话作为全球而已你不应该这样做,如果你还将积极使用会话安全目的应该是一个或另一个。

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

我希望这对你概述会话的正确用法有帮助。

我只是想再补充一点,你可以研究一下,无论如何你会发现自己,但我想我会给你一个开始。

我再简单指出一件事。当您在php中设置一个变量时,它最多只能在脚本运行期间存活和可用,这意味着它使用的内存在脚本结束时被释放,或者对于特定变量,它应该在不再需要时被释放。对于会话来说,情况并非如此,它的唯一目的是确保数据保持活跃。要从会话中删除部分数据,可以覆盖特定的部分。像这样的东西会满足你的需要。

$_SESSION['element_to_clear'] = null;

这将只删除选中的数据,并保留会话完整以供以后使用。