【发布时间】:2015-01-15 00:52:30
【问题描述】:
在某些语言 C# 或 .NET 中,这将是一个静态变量,但在 PHP 中,每次请求后都会清除内存。我希望该值在所有请求中都保持不变。我不想 $_SESSION 因为每个用户都不同。
为了帮助解释这里是一个例子: 我想要一个这样的脚本,它会计数。无论哪个用户/浏览器打开该 url。
<?php
function getServerVar($name){
...
}
function setServerVar($name,$val){
...
}
$count = getServerVar("count");
$count++;
setServerVar("count", $count);
echo $count;
我希望将值存储在内存中。当 apache 重新启动并且数据并不那么重要以至于它需要是线程安全的时,它就不需要持久化了。
更新:如果它在负载平衡环境中为每台服务器保存不同的值,我很好。 C# 或 Java 中的静态变量也不会同步。
【问题讨论】:
-
你会想要使用 redis 或 memcached 之类的东西。这将在服务器端存储您想要的任何内容,并且所有用户都可以访问。
-
看来我想要的是来自stackoverflow.com/questions/21947595/…的shm_get_var, shm_set_var