Thanks to lazy processing, you can define schemas and set user-provided values at any time and in any order. This can be very convenient in many cases, but you might have times where you’d like to provide a read-only version of the
Configuration to ensure nobody else can modify it.
To do this, simply call
$config->reader(). This will return an object that only has the
exists() methods, preventing others from further modifying the configuration:
use League\Config\Configuration; $config = new Configuration([/* ... */]); $someOtherObject->setConfig($config->reader());
Because both the reader and the main
ConfigurationInterface, you can type-hint against that anywhere you need to retrieve values but not necessarily modify things.
Edit this page