在php脚本中读取用户的环境变量

时间:2015-02-18 14:51:21

标签: php apache environment-variables ubuntu-14.04

我试图在Apache服务器下运行的PHP脚本中查询已设置我的.bashrc文件(我正在运行Ubuntu 14.04)的环境变量。

当我在访问该页面时查询getenv(' MY_VAR_NAME')或$ _ENV [' MY_VAR_NAME']时,似乎缺少这些变量..

我的猜测是:当脚本执行完毕后,用户就是www-data,所以' MY_VAR_NAME'无法访问。

这类问题是否有任何程序/最佳做法?

由于

1 个答案:

答案 0 :(得分:1)

  

我的猜测是:当执行脚本时,用户是www-data,因此无法访问“MY_VAR_NAME”。

你的猜测是正确的。 :)

  

这类问题是否有任何程序/最佳做法?

大多数程序员会做的是拥有一个包含这些变量的配置文件。您可以将配置文件存储在PHP脚本可以访问的某个区域中 - 无论是在某个主目录中,还是在/ etc中。或者在其他地方,例如在web根目录或其附近的目录中。

不同的框架采用不同的配置文件格式 - 一些是PHP脚本,一些是YAML文件,一些是Windows / DOS格式的INI文件,一些是XML,一些是JSON等。

我个人喜欢这样做的想法:

  • 仅在简单的INI文件中存储访问数据库所需的配置。
  • 将所有剩余配置存储在数据库表中,并为您需要编辑的部分构建编辑器。
  • 在memcached中缓存配置数据库表的内容。

无论您使用哪种方法取决于您,并且会根据您的应用需求而有所不同。