在 PHP 中,可以使用 .ini 文件读取 *.ini 文件parse_ini_file()
。但是,各种框架(包括 Laravel)选择引入一个单独的库来解析环境文件。
使用这个“dotenv”解决方案而不是 ini 文件和内置 PHP 函数背后的原因是什么?
使用 Laravel .env 对我有用
<?php
var_dump(parse_ini_file('.env', false, INI_SCANNER_RAW));
我们可以通过多种方式访问 .env 变量,但这对单个项目没有好处。最好使用统一的方式在整个项目中以任何方式访问这些变量。然而,laravel 被用于许多项目,选择灵活性对他们来说是可以理解的。
这是个好问题。我在php.net上发现了一些提及(按关键字搜索parse_ini_file
)。我想主要的问题是它parse_ini_file
不支持某些功能,例如常量、表达式等。另外,我猜有些开发人员希望以 OOP 风格执行此类操作。