• 在PHP中管理环境变量


      在PHP中管理环境变量

      现在我们都能用很多个编程语言开发,当我开始熟悉PHP时,我会忽略其它语言的特点。我用过其他语言(比如Node.js),但在PHP中没有看到一种轻松控制设置环境变量的方法,特别是在开发中。在Node.js中,dotenv库非常适合这种情况,后来我在PHP中,发现vlucas已经创建了phpdotenv,我准备将这个库应用到PHP项目中。

    在PHP中管理环境变量

      管理环境变量

      在开发环境下,我们的代码应该从本地读取文件而不是实装环境变量中读取变量。这样可以更容易地切换项目,我们可以为每个项目编写一个文件,不必重新导出环境变量(或者在切换项目时没有启动新的shell,某些环境变量是错误的)。另外,可能在为其他人编写代码时,例如示例应用程序或入门工具包,.env文件中提供了设置所需值的清晰列表。

      .env配置文件

      通常,我用两个文件:

      .env是将从中读取实际值的文件。将文件名放入.gitignore,以便在提交时不会将您的实际环境/配置也提交到git中!

      .env-example只保存用户设置项目所需的键,而不包括值。这样在后面可以轻松复制此文件并把空白值处填写完整,以使事情顺利进行。

      请注意,我们也可能需要一些用于生产环境的开关,比如CI框架中系统设置的环境变量,它不用部署.env。

      .env文件内容类似如下所示:

      AWESOME_API_KEY=abc123

      AWESOME_API_SECRET=abcdef0123456789

      如果值已经存在,我们就可以在PHP应用程序使用它们。

      PHPdotenv

      首先,我们需要使用Composer将phpdotenv包(https://github.com/vlucas/phpdotenv)添加到你的项目中:

      composer require vlucas/phpdotenv

      然后,在代码中添加这样的东西到index.php的头部或框架中相关设置的地方(如require “vendor/autoload.php”后可能是一个正确的地方)。代码如下:

      $dotenv = new DotenvDotenv(__DIR__);

      $dotenv->load();

      然后,所有变量都可以在自己期望的地方使用,比如$_ENV['AWESOME_API_KEY']。

      这样在开发中使用环境变量就像使用配置文件一样简单,感谢Vance同学创建这个优秀的库~

  • 相关阅读:
    雪中吟
    趋中法则
    我的年龄
    使用BindingList来实现DataGridview数据源为list时的动态增删改
    Winform下调用ShowDialog()显示窗体,切记调用Dispose来释放资源
    异常详细信息: System.Web.Hosting.HostingEnvironmentException: 访问 IIS 元数据库失败 解决方法
    【原创】:WinForm使用XML动态加载多语言
    ubuntu 11.10安装java1.6(转)
    java 中判断是否为 汉字(转)
    ubuntu下的c/c++环境搭建(转)
  • 原文地址:https://www.cnblogs.com/yyuyu/p/10009967.html
Copyright © 2020-2023  润新知