small parser for .env files
# .env file
KEY1="This is a string"
KEY2=234
KEY3=4.5
KEY4=TRUE
KEY5=OFF# php file
use TK\Dotenv\Dotenv;
$content = file_get_contents("./.env");
$actual = Dotenv::parse($content);# output
$actual = [
"KEY1" => "This is a string",
"KEY2" => "234",
"KEY3" => "4.5",
"KEY4" => "TRUE",
"KEY5" => "OFF",
];# .env file
KEY1="This is a string"
KEY2=234
KEY3=4.5
KEY4=TRUE
KEY5=OFF# php file
use TK\Dotenv\Dotenv;
$content = file_get_contents("./.env");
$actual = Dotenv::parse($content, true);# output
$actual = [
"KEY1" => "This is a string",
"KEY2" => 234,
"KEY3" => 4.5,
"KEY4" => true,
"KEY5" => false,
];The parse can convert some values to php primitive types, otherwise all values are string.
these values will be converted to booleans (case insensitive):
- truthy_values = ['true', 'yes', 'on']
- falsy_values = ['false', 'no', 'off']
these values will be converted to numbers:
- integers (e.g.
3or23424) - floats (e.g.
5.76or43234.3453) - hexadezimal only with prefix
0x(e.g.0xa0to160) - binary only with prefix
0b(e.g.0b110011to51) - octal only with prefix
0o(e.g.0o77to63)
these values will be converted to null (case insensitive):
- null
- none