extends class Phalcon\Config
implements Countable, ArrayAccess
Reads ini files and converts them to Phalcon\Config objects.
Given the next configuration file:
[database] adapter = Mysql host = localhost username = scott password = cheetah dbname = test_db [phalcon] controllersDir = "../app/controllers/" modelsDir = "../app/models/" viewsDir = "../app/views/"
You can read it as follows:
$config = new \Phalcon\Config\Adapter\Ini("path/config.ini"); echo $config->phalcon->controllersDir; echo $config->database->username;
PHP constants may also be parsed in the ini file, so if you define a constant as an ini value before calling the constructor, the constant’s value will be integrated into the results. To use it this way you must specify the optional second parameter as INI_SCANNER_NORMAL when calling the constructor:
$config = new \Phalcon\Config\Adapter\Ini( "path/config-with-constants.ini", INI_SCANNER_NORMAL );
Phalcon\Config\Adapter\Ini constructor
Build multidimensional array from string
$this->_parseIniString("path.hello.world", "value for last key"); // result [ "path" => [ "hello" => [ "world" => "value for last key", ], ], ];
We have to cast values manually because parse_ini_file() has a poor implementation.
Allows to check whether an attribute is defined using the array-syntax
var_dump( isset($config["database"]) );
Gets an attribute from the configuration, if the attribute isn’t defined returns null If the value is exactly null or is not defined the default value will be used instead
echo $config->get("controllersDir", "../app/controllers/");
Gets an attribute using the array-syntax
print_r( $config["database"] );
Sets an attribute using the array-syntax
$config["database"] = [ "type" => "Sqlite", ];
Unsets an attribute using the array-syntax
unset($config["database"]);
Merges a configuration into the current one
$appConfig = new \Phalcon\Config( [ "database" => [ "host" => "localhost", ], ] ); $globalConfig->merge($appConfig);
Converts recursively the object to an array
print_r( $config->toArray() );
Returns the count of properties set in the config
print count($config);
or
print $config->count();
Restores the state of a Phalcon\Config object
Helper method for merge configs (forwarding nested config instance)
© 2011–2017 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0.
https://docs.phalconphp.com/en/latest/api/Phalcon_Config_Adapter_Ini.html