Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中访问会话变量?_Php_Client_Session Variables - Fatal编程技术网

如何在PHP中访问会话变量?

如何在PHP中访问会话变量?,php,client,session-variables,Php,Client,Session Variables,PHP或任何其他服务器端语言如何在客户机上存储会话 你能帮我吗?PHP在用户浏览器中存储cookie。cookies不存储任何会话数据,它只是唯一地标识用户。会话数据存储在服务器上,并与用户的cookie关联 因此,当用户发出请求时,存储在cookie中的会话ID将随请求一起传递。服务器可以使用该会话ID检索实际会话数据,并使其可用于PHP脚本。PHP在用户浏览器中存储cookie。cookies不存储任何会话数据,它只是唯一地标识用户。会话数据存储在服务器上,并与用户的cookie关联 因此,

PHP或任何其他服务器端语言如何在客户机上存储会话


你能帮我吗?

PHP在用户浏览器中存储cookie。cookies不存储任何会话数据,它只是唯一地标识用户。会话数据存储在服务器上,并与用户的cookie关联


因此,当用户发出请求时,存储在cookie中的会话ID将随请求一起传递。服务器可以使用该会话ID检索实际会话数据,并使其可用于PHP脚本。

PHP在用户浏览器中存储cookie。cookies不存储任何会话数据,它只是唯一地标识用户。会话数据存储在服务器上,并与用户的cookie关联


因此,当用户发出请求时,存储在cookie中的会话ID将随请求一起传递。服务器可以使用该会话ID检索实际会话数据,并使其可用于PHP脚本。

会话存储在服务器上。在文件系统上(通常在tmp文件夹中)或数据库中(如果已设置数据库会话处理)。有时,它们将存储在缓存守护进程中,例如。无论哪种方式,会话数据都存储在服务器上,而不是客户机上

在客户端,通常会有一个,其中包含用于将用户链接到存储在服务器上的会话数据的。在某些情况下,此ID可能会被强制附加到URL,这就是为什么有时会遇到在URL中使用PHPSESSID作为GET参数的网站


基本上,当您访问网站时,该网站将读取存储在您机器上的cookie中的PHPSESSID。然后,它使用该ID查找与您的访问相关的会话数据。

会话存储在服务器上。在文件系统上(通常在tmp文件夹中)或数据库中(如果已设置数据库会话处理)。有时,它们将存储在缓存守护进程中,例如。无论哪种方式,会话数据都存储在服务器上,而不是客户机上

在客户端,通常会有一个,其中包含用于将用户链接到存储在服务器上的会话数据的。在某些情况下,此ID可能会被强制附加到URL,这就是为什么有时会遇到在URL中使用PHPSESSID作为GET参数的网站


基本上,当您访问网站时,该网站将读取存储在您机器上的cookie中的PHPSESSID。然后,它使用该ID查找与您的访问相关的会话数据。

它实际上是基于服务器的文件。当您调用session_start()时,PHP会在服务器的HDD上创建一个文件,其中包含您在该会话中存储的任何内容。在客户端,他们得到一个cookie(默认名为PHPSESSID),其中包含与该文件对应的随机字符串。然后,PHP使用随机垃圾收集来删除旧会话文件。如果希望会话的持续时间超过php.ini中的超时时间,可以创建自己的会话处理程序,将它们存储在memcached或数据库中

下面是PHP网站上与此相关的部分

它实际上是基于服务器的文件。当您调用session_start()时,PHP会在服务器的HDD上创建一个文件,其中包含您在该会话中存储的任何内容。在客户端,他们得到一个cookie(默认名为PHPSESSID),其中包含与该文件对应的随机字符串。然后,PHP使用随机垃圾收集来删除旧会话文件。如果希望会话的持续时间超过php.ini中的超时时间,可以创建自己的会话处理程序,将它们存储在memcached或数据库中

下面是PHP网站上与此相关的部分

是-可能“会话[数据存储]在客户端计算机上”

虽然会话数据通常存储在服务器端(使用客户端提供的标识符,通常以cookie的形式),但没有理由必须将会话数据存储在服务器端以实现相同的语义1

会话提供程序可以将所有会话数据直接存储在cookie中。这意味着所有会话数据都可以存储在客户端;还有这样的提供者

然而,“安全地”使用cookie存储要做更多的工作;i、 e.加密和MAC是所需的最低添加。(见附件。)


1实际上,会话数据的唯一“要求”是,在浏览器会话中,所有窗口/选项卡必须(能够)共享相同的会话数据。Cookie是实现这一点最简单的方法,因为根据某些规则,每个HTTP请求都会传输Cookie。

是-可能“会话[数据存储]在客户端机器上”

虽然会话数据通常存储在服务器端(使用客户端提供的标识符,通常以cookie的形式),但没有理由必须将会话数据存储在服务器端以实现相同的语义1

会话提供程序可以将所有会话数据直接存储在cookie中。这意味着所有会话数据都可以存储在客户端;还有这样的提供者

然而,“安全地”使用cookie存储要做更多的工作;i、 e.加密和MAC是所需的最低添加。(见附件。)



1实际上,会话数据的唯一“要求”是,在浏览器会话中,所有窗口/选项卡必须(能够)共享相同的会话数据。cookie是实现这一点的最简单的方法,因为根据某些规则,每个HTTP请求都会传输cookie。

会话不存储在客户机上,而是存储在服务器上。服务器上的会话由自动执行的cookie引用