Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.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_Global Variables_Dynamic Variables - Fatal编程技术网

如何在没有函数的PHP中设置和检索动态全局变量

如何在没有函数的PHP中设置和检索动态全局变量,php,global-variables,dynamic-variables,Php,Global Variables,Dynamic Variables,我试图编写一个简单的页面,使用动态变量名将一些数据保存到全局状态(存储在服务器内存中)。简单来说,查询字符串(GET only)只能发送两个参数 jam:标识唯一数据段的参数,该数据段实际上可以是任何文本字符串(包括数字)。此值附加到字符串“jam”,以创建动态变量名。因此,?jam=123导致全局变量jam123。同样地,因此?jam=Booboo会导致全局变量jambooo 部分:设置上述全局变量的值(必须是数字)。因此,如果传递了?jam=Booboo§ion=4,则全局变量ja

我试图编写一个简单的页面,使用动态变量名将一些数据保存到全局状态(存储在服务器内存中)。简单来说,查询字符串(GET only)只能发送两个参数

  • jam
    :标识唯一数据段的参数,该数据段实际上可以是任何文本字符串(包括数字)。此值附加到字符串
    “jam”
    ,以创建动态变量名。因此,
    ?jam=123
    导致全局变量
    jam123
    。同样地,因此
    ?jam=Booboo
    会导致全局变量
    jambooo

  • 部分
    :设置上述全局变量的值(必须是数字)。因此,如果传递了
    ?jam=Booboo§ion=4
    ,则全局变量
    jambooo
    的值设置为
    4

其思想是,一旦为每个动态命名的
jam
jamXXXX
)设置了值,以后任何指定相同
jam
的请求都应该输出设置值。例如,在使用参数调用页面后指定
?jam=Booboo
的请求应该只输出
“4”
。但如果下一个请求是
?jam=Booboo§ion=6
,则后续请求应输出
“6”

这是在AWS Lightsail灯组的PHP7上设置的。我愿意使用另一个变量作用域,如果它将在服务器内存中持久存在(而不是cookie)

我尝试了下面的代码,但是当设置全局变量时,我正确地看到了初始值,但在后续请求中没有看到它的输出。我不确定PHP中是否缺少设置,或者我的代码是否有问题。我还尝试使用
global
关键字,并在
php.ini
中查找
register\u globals
设置(当前不存在)


如果我没有弄错的话,您似乎希望
$GLOBALS
在两个不同的PHP请求之间保持不变

除非另有编程,否则每个PHP调用都会收到自己的内存空间,而这些内存空间彼此不共享。因此,保存到
$GLOBALS
数组中的变量将仅对该请求可用,并且在该请求结束时将立即被遗忘。对同一服务器(甚至是同一脚本文件)上的PHP代码的后续调用不会从以前的调用中收到
$GLOBALS

您需要使用文件、缓存服务或数据库对持久性存储进行编程