php中服务器变量的范围

时间:2013-04-28 19:43:59

标签: php web-services php-5.3 http-authentication

我们知道每个用户的会话变量$ _SESSION是不同的。我想知道像$ _SERVER这样的Server变量的范围。 我正在我的RestFul API中进行http身份验证。如果我设置$_SERVER['PHP_AUTH_USER'],是否会为1位用户或访问我的服务器页面的所有用户设置?

由于

2 个答案:

答案 0 :(得分:0)

仅针对当前用户设置,但为什么不使用$ GLOBALS而不是$ _SERVER?

  

$ GLOBALS - 引用全局范围内可用的所有变量

对于这样的任务,这个超全局数组比$ _SERVER更合适。 请注意,$ GLOBALS或$ _SERVER在请求完成后不保存其数据。因此,如果您想将一些数据从一个请求保留到另一个请求,则应使用$ _SESSION。

答案 1 :(得分:0)

php.net

  

PHP中的会话支持包含一种保留某些数据的方法   跨后续访问。这使您可以构建更多自定义   应用程序并增加您的网站的吸引力。

     

访问您网站的访问者被分配了一个唯一的ID,即   所谓的会话ID。这可以存储在用户的cookie中   在URL中传播或传播。

用户之间的意思是不同的,因为每个用户的会话ID不同,而Session允许用户访问所有者关联数组

为$ _SERVER设置的值在 RAM 上,并且未存储在文件数据库中,并且删除 <=>> RAM 请求完成后。对于这种工作,比如在用户在线期间保存变量你可以使用$ _SESSION但是如果你想为所有用户保存变量你可以使用数据库