Download the PHP package tiny-blocks/environment-variable without Composer

On this page you can find all versions of the php package tiny-blocks/environment-variable. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package environment-variable

Environment variable

License

Overview

Provides a type-safe environment variable reader for PHP, wrapping raw values behind a typed accessor with explicit string, integer, float, and boolean conversion methods. Supports defaults for missing variables and distinguishes between absent and empty states. Built to surface configuration errors at read time rather than propagate silent coercions through the system.

Names in the HTTP_ namespace are read only from sources an HTTP request cannot reach, so a request header is never mistaken for configuration. See Resolution order.

Installation

How to use

Creating an environment variable

To create and work with environment variables, use the from method to get an instance of the environment variable. When no source holds the variable, the method raises EnvironmentVariableMissing.

To retrieve an environment variable with the option of providing a default value in case the variable does not exist, use the fromOrDefault method.

If the environment variable is not found, the method returns an instance carrying the provided default value instead of throwing an exception. With no default, the instance carries an empty string.

Conversions

Once you have an instance of the environment variable, you can convert its value into various types.

Convert to string

To convert the environment variable to a string. The raw value is returned unchanged, with no trimming.

Convert to integer

To convert the environment variable to an integer. Values that do not represent an integer, including values above PHP_INT_MAX, raise EnvironmentValueNotInteger instead of being silently truncated.

Convert to float

To convert the environment variable to a float. The decimal separator is . and thousands separators are not accepted. Values that do not represent a float raise EnvironmentValueNotFloat.

Convert to boolean

To convert the environment variable to a boolean. The accepted values are 1, true, on, and yes for true, and 0, false, off, no, and the empty string for false. Anything else raises EnvironmentValueNotBoolean.

Check if the environment variable has a value

Checks if the environment variable has a value. Values like false, 0, and -1 are valid and non-empty. Only an empty string, a value made of whitespace, and the literal null in any casing report no value.

Exceptions

Every failure raises a dedicated class from TinyBlocks\EnvironmentVariable\Exceptions. All of them extend InvalidArgumentException, so a consumer can catch the broad type or the precise one.

Exception Raised by Condition
EnvironmentVariableMissing from No source holds the variable.
EnvironmentValueNotInteger toInteger The value does not represent an integer.
EnvironmentValueNotFloat toFloat The value does not represent a float.
EnvironmentValueNotBoolean toBoolean The value is not one of the recognized boolean tokens.

Messages carry the variable name, never its value, so a failed conversion on a secret does not leak it into logs or stack traces.

Resolution order

A value is resolved from the first source that holds it. Non-scalar entries in the superglobals are skipped, so an array left in $_ENV never reaches a conversion method.

Order Source Read for names in the HTTP_ namespace
1 $_ENV Yes
2 $_SERVER No
3 Process environment Yes, restricted to the real process environment

Under CGI-like servers (PHP-FPM, mod_php, FastCGI), request headers are mapped into $_SERVER and into the SAPI environment under an HTTP_ prefix, so a Proxy request header surfaces as HTTP_PROXY. For names in that namespace the library skips $_SERVER and reads only the real process environment, which a request cannot write. A variable genuinely set in the environment still resolves. See httpoxy for the background.

FAQ

01. Why is a name starting with HTTP_ not read from $_SERVER?

Because anyone sending a request can write that namespace. Only the request-supplied value is refused, so a variable genuinely set in the process environment still resolves. See Resolution order.

02. Why does toBoolean return false for an empty value instead of raising?

The empty string is one of the values PHP's boolean filter recognizes as false, alongside 0, off, and no. A variable declared but left blank therefore reads as false. Use hasValue first when the difference between blank and false matters.

License

Environment variable is licensed under MIT.

Contributing

Please follow the contributing guidelines to contribute to the project.


All versions of environment-variable with dependencies

PHP Build Version
Package Version
Requires php Version ^8.5
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package tiny-blocks/environment-variable contains the following files

Loading the files please wait ...