Download the PHP package beatlabs/load without Composer
On this page you can find all versions of the php package beatlabs/load. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download beatlabs/load
More information about beatlabs/load
Files in beatlabs/load
Informations about the package load
LOAD
LOAD is a PHP library for configuration loading to APCu
Sources
Available sources for configuration loading are:
- PHP file
- Consul
- Environment variables
Install
You can install load
using Composer by running the following:
composer require beatlabs/load
Usage
PHP file:
You can read a PHP
file that returns an array.
For example with config.php
:
You can use the following:
Consul (Default server localhost:8500):
Consul (Custom server myhost:8000 with root path "services/my-service"):
Environment variables:
You can have a prefix for environment variables so that you only include environment variables that start with that prefix. That gives the ability to load only what needed instead of entire environment as a configuration.
Multiple loaders:
Loaders are executed in the order they are defined. Each loader will override any configuration loaded from previous loaders.
Custom cache
By default, load
uses APCu
to cache configuration, but you can use your own cache (ex. Redis, Memcache etc.) by implementing the BeatLabs\Load\Interfaces\Cache
interface and set it to Config
constructor.
For example:
Configuration flattening
Configuration values that have nested sub-values are flattened and can be fetched without further process.
For example:
config.php
Will behave like this:
The default separator is .
, but you can set your own at Config
constructor.
For example:
Reload configuration
Configuration can be reloaded by sending SIGUSR2
to PHP running process for CLI
scripts and in php-fpm
master process for HTTP
scripts.
Reloading can also be invoked in code by using the following code:
How to Contribute
See Contribution Guidelines
Code of conduct
Please note that this project is released with a Contributor Code of Conduct. By participating in this project and its community you agree to abide by those terms.
Changelog
You can see changelog here
All versions of load with dependencies
ext-apcu Version *
ext-json Version *
ext-pcntl Version *
sensiolabs/consul-php-sdk Version ^3.1