php超级全局存储多久并可以访问应用程序?

时间:2014-05-11 01:04:55

标签: php mysql storage superglobals

php超级全局存储了多长时间?

让我们以此为例:

<?php 
$x = 75; 
$y = 25;

function addition() { 
  $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; 
}

addition(); 
echo $z; 
?>

应用程序可以访问变量多长时间?一天,一个月,一年?永远?

我正在创建一个多人游戏,这是一个php web应用程序。我只想弄清楚存储持久数据的最佳方法。

我认为mysql是我现在最好的选择。在coldfusion中,您有不同的变量范围,即会话变量与应用程序变量。

谢谢。

1 个答案:

答案 0 :(得分:1)

全局服务器不是整个服务器的全局服务器,也不是运行在其上的每个脚本的全局服务器。它们只是一个脚本的单个实例的全局。甚至相同脚本的两个实例也不能访问彼此的全局变量。因此,一旦一个实例运行完毕,那些全局变量就消失了。下次脚本运行时,它将不再具有那些全局变量。

如果你想在实例之间保留一些东西,你将不得不使用数据库,会话,文件等。但是,会话只会基于每个用户,而不是全局的实例。脚本。

如果你正在制作游戏,数据库可能是你最好的解决方案。它们用于存储数据并使用查询将其恢复。这意味着您可以非常轻松地存储数据并获取所需的数据。