gpt4 book ai didi

php - 在 PHP 中引用 session 变量

转载 作者:可可西里 更新时间:2023-11-01 12:46:23 24 4
gpt4 key购买 nike

假设我正在存储一个名为 $_SESSION["logged_in_user"] 的数组或对象。

如果我需要在整个脚本中反复引用它,以下哪项是“最佳实践”?

  • 每次都使用 $_SESSION["logged_in_user"](即 $_SESSION["logged_in_user"]["first_name"])?

  • 将对象复制到一个新变量中,如 $logged_in = $_SESSION["logged_in_user"]

  • 创建对 session 变量的引用,如 $logged_in =& $_SESSION["logged_in_user"]

我可能想得太多了,但我主要担心的是脚本开销和可读性。我不确定重复引用 session 变量是否比引用内联声明的变量慢。我也不知道将 session 变量复制到“常规”变量中是否会增加不必要的开销。我确实喜欢 $logged_in["first_name"] 优于 $_SESSION["logged_in_user"]["first_name"] 的可读性。

那么这里有最佳实践吗,还是真的无关紧要?

最佳答案

$_SESSION 是一个特殊的 PHP 超全局数组。因此,从技术上讲,您可以随时通过使用它来引用它:

$_SESSION['logged_in_user']

然而,它也很特别,因为它可以改变。以下示例使其可见:

$alias =& $_SESSION;
session_start();
$alias['foo'] = 'bar';

此代码不会设置 $_SESSION['foo']$alias 指向先前的 $_SESSIONsession_start() 已创建一个新 session 。

如果您了解这些注意事项,您自然可以创建自己的 $_SESSION 抽象。

关于php - 在 PHP 中引用 session 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8113494/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com