如何在整个应用程序中设置可访问的全局变量

Ami*_*pta 5 php global-variables

我用这样的全局变量开发了一个PHP页面;

global $amty_imgCache; $amty_imgCache = array();
$GLOBALS["amty_imgCache"]=$amty_imgCache;
Run Code Online (Sandbox Code Playgroud)

此页面具有向/从此阵列添加/删除条目的功能.

我在另一个PHP页面上调用了一个函数来显示它的计数并以这种方式将一些元素放入这个全局数组中;

Count <?php echo amty_getImageCacheCount(); ?>
<?php amty_putIntoImageCache(100,0); ?>
Count <?php echo amty_getImageCacheCount(); ?>
Run Code Online (Sandbox Code Playgroud)

但是在每次刷新时,它首先显示0和1.

如何在整个应用程序中保留全局变量的值.

小智 5

使用APC或memcache存储此类值.您不仅可以从任何页面访问这些值,还可以从任何服务器访问这些值.

  • 你能给我一个简单的例子或参考吗?谢谢 (5认同)

Pau*_*ain 3

如果不将变量保存到某个持久存储中,您就无法真正在页面执行过程中持久保存变量。

如果您需要仅为特定用户存储变量,请使用会话session_start();,然后使用$_SESSION;

如果是针对整个应用程序,您应该考虑使用数据库或将数据保存到文件中。如果保存到文件,请签出serialize()unserialize()这将允许您将变量的状态存储到文本表示形式。