推断 PHP 中全局变量和超全局变量之间的正确区别

发布于 2024-12-15 21:29:00 字数 470 浏览 1 评论 0原文

我知道 SUPERGLOBAL 变量是在整个脚本的任何范围内可用的关联数组,并且根据以下帖子摘录(http://www.sitepoint.com/forums/showthread.php?68618-PHP-global-and-superglobal)

摘抄: “全局”和“超全局”之间的区别在于,全局变量是在顶层定义的,但最初在函数内部不可访问,而超全局变量在代码中的任何位置都自动可用。

现在我指的文本是这样的(关于原生 PHP 会话): 每当您使用 session_start() 函数时,PHP 都会创建其 SID,并且默认情况下,如果您使用某些其他与会话相关的函数(例如 session_register()),PHP 也会创建它的 SID。 SID 的值保存在全局变量名称 PHPSESSID 中。

现在我不确定如何访问 PHPSESSID。它只是 $phpsessid 还是 $_SESSION['PHPSESSID']。

请帮我清除这一点。

I know SUPERGLOBAL variables are associative arrays available in any scope throughtout the script and according to the following excerpt from a post (http://www.sitepoint.com/forums/showthread.php?68618-PHP-global-and-superglobal)

Excerpt:
the difference between "global" and "superglobal" is that a global variable is defined at the top level, but is not initially accessible inside a function, whereas a superglobal is automatically available anywhere within the code.

Now the text i am referring to says (about NATIVE PHP SESSIONS):
PHP creates its SID whenever you use the session_start() function, and also by default if you use certain other session-related functions, such as session_register(). The value of SID is kept in a global variable name PHPSESSID.

Now I am not sure as to how PHPSESSID is accessible. Is it simply $phpsessid or $_SESSION['PHPSESSID'].

Please clear this for me.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

感性 2024-12-22 21:29:00

我确信没有 $_SESSION['PHPSESSID'] 也没有 $phpsessid。如果 register_globals 开启,也许 $phpsessid 存在。

为了获取您的会话 ID,您可以使用 $_COOKIE['PHPSESSID']session_id()。您可以查看文档

I am sure there is no $_SESSION['PHPSESSID'] nor $phpsessid. Maybe $phpsessid exists if register_globals are on.

In order to obtain your session id you can either use $_COOKIE['PHPSESSID'] or session_id(). You can check the documentation.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文