Class Phalcon\Config¶
implements ArrayAccess, Countable
Phalcon\Config is designed to simplify the access to, and the use of, configuration data within applications. It provides a nested object property based user interface for accessing this configuration data within application code.
<?php
$config = new \Phalcon\Config(
[
"database" => [
"adapter" => "Mysql",
"host" => "localhost",
"username" => "scott",
"password" => "cheetah",
"dbname" => "test_db",
],
"phalcon" => [
"controllersDir" => "../app/controllers/",
"modelsDir" => "../app/models/",
"viewsDir" => "../app/views/",
],
]
);
Constants¶
string DEFAULT_PATH_DELIMITER
Methods¶
public __construct ([array $arrayConfig])
Phalcon\Config constructor
public offsetExists (mixed $index)
Allows to check whether an attribute is defined using the array-syntax
public path (mixed $path, [mixed $defaultValue], [mixed $delimiter])
Returns a value from current config using a dot separated path.
public get (mixed $index, [mixed $defaultValue])
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
public offsetGet (mixed $index)
Gets an attribute using the array-syntax
public offsetSet (mixed $index, mixed $value)
Sets an attribute using the array-syntax
public offsetUnset (mixed $index)
Unsets an attribute using the array-syntax
public merge (Phalcon\Config $config)
Merges a configuration into the current one
<?php
$appConfig = new \Phalcon\Config(
[
"database" => [
"host" => "localhost",
],
]
);
$globalConfig->merge($appConfig);
public toArray ()
Converts recursively the object to an array
public count ()
Returns the count of properties set in the config
orpublic static __set_state (array $data)
Restores the state of a Phalcon\Config object
public static setPathDelimiter ([mixed $delimiter])
Sets the default path delimiter
public static getPathDelimiter ()
Gets the default path delimiter
final protected Config merged config _merge (Config $config, [mixed $instance])
Helper method for merge configs (forwarding nested config instance)
Class Phalcon\Config\Adapter\Grouped¶
extends class Phalcon\Config
implements Countable, ArrayAccess
Reads multiple files (or arrays) and merges them all together.
<?php
use Phalcon\Config\Adapter\Grouped;
$config = new Grouped(
[
"path/to/config.php",
"path/to/config.dist.php",
]
);
<?php
use Phalcon\Config\Adapter\Grouped;
$config = new Grouped(
[
"path/to/config.json",
"path/to/config.dist.json",
],
"json"
);
<?php
use Phalcon\Config\Adapter\Grouped;
$config = new Grouped(
[
[
"filePath" => "path/to/config.php",
"adapter" => "php",
],
[
"filePath" => "path/to/config.json",
"adapter" => "json",
],
[
"adapter" => "array",
"config" => [
"property" => "value",
],
],
);
Constants¶
string DEFAULT_PATH_DELIMITER
Methods¶
public __construct (array $arrayConfig, [mixed $defaultAdapter])
Phalcon\Config\Adapter\Grouped constructor
public offsetExists (mixed $index) inherited from Phalcon\Config
Allows to check whether an attribute is defined using the array-syntax
public path (mixed $path, [mixed $defaultValue], [mixed $delimiter]) inherited from Phalcon\Config
Returns a value from current config using a dot separated path.
public get (mixed $index, [mixed $defaultValue]) inherited from Phalcon\Config
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
public offsetGet (mixed $index) inherited from Phalcon\Config
Gets an attribute using the array-syntax
public offsetSet (mixed $index, mixed $value) inherited from Phalcon\Config
Sets an attribute using the array-syntax
public offsetUnset (mixed $index) inherited from Phalcon\Config
Unsets an attribute using the array-syntax
public merge (Phalcon\Config $config) inherited from Phalcon\Config
Merges a configuration into the current one
<?php
$appConfig = new \Phalcon\Config(
[
"database" => [
"host" => "localhost",
],
]
);
$globalConfig->merge($appConfig);
public toArray () inherited from Phalcon\Config
Converts recursively the object to an array
public count () inherited from Phalcon\Config
Returns the count of properties set in the config
orpublic static __set_state (array $data) inherited from Phalcon\Config
Restores the state of a Phalcon\Config object
public static setPathDelimiter ([mixed $delimiter]) inherited from Phalcon\Config
Sets the default path delimiter
public static getPathDelimiter () inherited from Phalcon\Config
Gets the default path delimiter
final protected Config merged config _merge (Config $config, [mixed $instance]) inherited from Phalcon\Config
Helper method for merge configs (forwarding nested config instance)
Class Phalcon\Config\Adapter\Ini¶
extends class Phalcon\Config
implements Countable, ArrayAccess
Reads ini files and converts them to Phalcon\Config objects.
Given the next configuration file:
<?php
[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:
<?php
$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:
<?php
$config = new \Phalcon\Config\Adapter\Ini(
"path/config-with-constants.ini",
INI_SCANNER_NORMAL
);
Constants¶
string DEFAULT_PATH_DELIMITER
Methods¶
public __construct (mixed $filePath, [mixed $mode])
Phalcon\Config\Adapter\Ini constructor
protected _parseIniString (mixed $path, mixed $value)
Build multidimensional array from string
<?php
$this->_parseIniString("path.hello.world", "value for last key");
// result
[
"path" => [
"hello" => [
"world" => "value for last key",
],
],
];
protected _cast (mixed $ini)
We have to cast values manually because parse_ini_file() has a poor implementation.
public offsetExists (mixed $index) inherited from Phalcon\Config
Allows to check whether an attribute is defined using the array-syntax
public path (mixed $path, [mixed $defaultValue], [mixed $delimiter]) inherited from Phalcon\Config
Returns a value from current config using a dot separated path.
public get (mixed $index, [mixed $defaultValue]) inherited from Phalcon\Config
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
public offsetGet (mixed $index) inherited from Phalcon\Config
Gets an attribute using the array-syntax
public offsetSet (mixed $index, mixed $value) inherited from Phalcon\Config
Sets an attribute using the array-syntax
public offsetUnset (mixed $index) inherited from Phalcon\Config
Unsets an attribute using the array-syntax
public merge (Phalcon\Config $config) inherited from Phalcon\Config
Merges a configuration into the current one
<?php
$appConfig = new \Phalcon\Config(
[
"database" => [
"host" => "localhost",
],
]
);
$globalConfig->merge($appConfig);
public toArray () inherited from Phalcon\Config
Converts recursively the object to an array
public count () inherited from Phalcon\Config
Returns the count of properties set in the config
orpublic static __set_state (array $data) inherited from Phalcon\Config
Restores the state of a Phalcon\Config object
public static setPathDelimiter ([mixed $delimiter]) inherited from Phalcon\Config
Sets the default path delimiter
public static getPathDelimiter () inherited from Phalcon\Config
Gets the default path delimiter
final protected Config merged config _merge (Config $config, [mixed $instance]) inherited from Phalcon\Config
Helper method for merge configs (forwarding nested config instance)
Class Phalcon\Config\Adapter\Json¶
extends class Phalcon\Config
implements Countable, ArrayAccess
Reads JSON files and converts them to Phalcon\Config objects.
Given the following configuration file:
You can read it as follows:
<?php
$config = new Phalcon\Config\Adapter\Json("path/config.json");
echo $config->phalcon->baseuri;
echo $config->models->metadata;
Constants¶
string DEFAULT_PATH_DELIMITER
Methods¶
public __construct (mixed $filePath)
Phalcon\Config\Adapter\Json constructor
public offsetExists (mixed $index) inherited from Phalcon\Config
Allows to check whether an attribute is defined using the array-syntax
public path (mixed $path, [mixed $defaultValue], [mixed $delimiter]) inherited from Phalcon\Config
Returns a value from current config using a dot separated path.
public get (mixed $index, [mixed $defaultValue]) inherited from Phalcon\Config
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
public offsetGet (mixed $index) inherited from Phalcon\Config
Gets an attribute using the array-syntax
public offsetSet (mixed $index, mixed $value) inherited from Phalcon\Config
Sets an attribute using the array-syntax
public offsetUnset (mixed $index) inherited from Phalcon\Config
Unsets an attribute using the array-syntax
public merge (Phalcon\Config $config) inherited from Phalcon\Config
Merges a configuration into the current one
<?php
$appConfig = new \Phalcon\Config(
[
"database" => [
"host" => "localhost",
],
]
);
$globalConfig->merge($appConfig);
public toArray () inherited from Phalcon\Config
Converts recursively the object to an array
public count () inherited from Phalcon\Config
Returns the count of properties set in the config
orpublic static __set_state (array $data) inherited from Phalcon\Config
Restores the state of a Phalcon\Config object
public static setPathDelimiter ([mixed $delimiter]) inherited from Phalcon\Config
Sets the default path delimiter
public static getPathDelimiter () inherited from Phalcon\Config
Gets the default path delimiter
final protected Config merged config _merge (Config $config, [mixed $instance]) inherited from Phalcon\Config
Helper method for merge configs (forwarding nested config instance)
Class Phalcon\Config\Adapter\Php¶
extends class Phalcon\Config
implements Countable, ArrayAccess
Reads php files and converts them to Phalcon\Config objects.
Given the next configuration file:
<?php
<?php
return [
"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:
<?php
$config = new \Phalcon\Config\Adapter\Php("path/config.php");
echo $config->phalcon->controllersDir;
echo $config->database->username;
Constants¶
string DEFAULT_PATH_DELIMITER
Methods¶
public __construct (mixed $filePath)
Phalcon\Config\Adapter\Php constructor
public offsetExists (mixed $index) inherited from Phalcon\Config
Allows to check whether an attribute is defined using the array-syntax
public path (mixed $path, [mixed $defaultValue], [mixed $delimiter]) inherited from Phalcon\Config
Returns a value from current config using a dot separated path.
public get (mixed $index, [mixed $defaultValue]) inherited from Phalcon\Config
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
public offsetGet (mixed $index) inherited from Phalcon\Config
Gets an attribute using the array-syntax
public offsetSet (mixed $index, mixed $value) inherited from Phalcon\Config
Sets an attribute using the array-syntax
public offsetUnset (mixed $index) inherited from Phalcon\Config
Unsets an attribute using the array-syntax
public merge (Phalcon\Config $config) inherited from Phalcon\Config
Merges a configuration into the current one
<?php
$appConfig = new \Phalcon\Config(
[
"database" => [
"host" => "localhost",
],
]
);
$globalConfig->merge($appConfig);
public toArray () inherited from Phalcon\Config
Converts recursively the object to an array
public count () inherited from Phalcon\Config
Returns the count of properties set in the config
orpublic static __set_state (array $data) inherited from Phalcon\Config
Restores the state of a Phalcon\Config object
public static setPathDelimiter ([mixed $delimiter]) inherited from Phalcon\Config
Sets the default path delimiter
public static getPathDelimiter () inherited from Phalcon\Config
Gets the default path delimiter
final protected Config merged config _merge (Config $config, [mixed $instance]) inherited from Phalcon\Config
Helper method for merge configs (forwarding nested config instance)
Class Phalcon\Config\Adapter\Yaml¶
extends class Phalcon\Config
implements Countable, ArrayAccess
Reads YAML files and converts them to Phalcon\Config objects.
Given the following configuration file:
<?php
phalcon:
baseuri: /phalcon/
controllersDir: !approot /app/controllers/
models:
metadata: memory
You can read it as follows:
<?php
define(
"APPROOT",
dirname(__DIR__)
);
$config = new \Phalcon\Config\Adapter\Yaml(
"path/config.yaml",
[
"!approot" => function($value) {
return APPROOT . $value;
},
]
);
echo $config->phalcon->controllersDir;
echo $config->phalcon->baseuri;
echo $config->models->metadata;
Constants¶
string DEFAULT_PATH_DELIMITER
Methods¶
public __construct (mixed $filePath, [array $callbacks])
Phalcon\Config\Adapter\Yaml constructor
public offsetExists (mixed $index) inherited from Phalcon\Config
Allows to check whether an attribute is defined using the array-syntax
public path (mixed $path, [mixed $defaultValue], [mixed $delimiter]) inherited from Phalcon\Config
Returns a value from current config using a dot separated path.
public get (mixed $index, [mixed $defaultValue]) inherited from Phalcon\Config
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
public offsetGet (mixed $index) inherited from Phalcon\Config
Gets an attribute using the array-syntax
public offsetSet (mixed $index, mixed $value) inherited from Phalcon\Config
Sets an attribute using the array-syntax
public offsetUnset (mixed $index) inherited from Phalcon\Config
Unsets an attribute using the array-syntax
public merge (Phalcon\Config $config) inherited from Phalcon\Config
Merges a configuration into the current one
<?php
$appConfig = new \Phalcon\Config(
[
"database" => [
"host" => "localhost",
],
]
);
$globalConfig->merge($appConfig);
public toArray () inherited from Phalcon\Config
Converts recursively the object to an array
public count () inherited from Phalcon\Config
Returns the count of properties set in the config
orpublic static __set_state (array $data) inherited from Phalcon\Config
Restores the state of a Phalcon\Config object
public static setPathDelimiter ([mixed $delimiter]) inherited from Phalcon\Config
Sets the default path delimiter
public static getPathDelimiter () inherited from Phalcon\Config
Gets the default path delimiter
final protected Config merged config _merge (Config $config, [mixed $instance]) inherited from Phalcon\Config
Helper method for merge configs (forwarding nested config instance)
Class Phalcon\Config\Exception¶
extends class Phalcon\Exception
implements Throwable
Methods¶
final private Exception __clone () inherited from Exception
Clone the exception
public __construct ([mixed $message], [mixed $code], [mixed $previous]) inherited from Exception
Exception constructor
public __wakeup () inherited from Exception
...
final public string getMessage () inherited from Exception
Gets the Exception message
final public int getCode () inherited from Exception
Gets the Exception code
final public string getFile () inherited from Exception
Gets the file in which the exception occurred
final public int getLine () inherited from Exception
Gets the line in which the exception occurred
final public array getTrace () inherited from Exception
Gets the stack trace
final public Exception getPrevious () inherited from Exception
Returns previous Exception
final public Exception getTraceAsString () inherited from Exception
Gets the stack trace as a string
public string __toString () inherited from Exception
String representation of the exception
Class Phalcon\Config\Factory¶
extends abstract class Phalcon\Factory
implements Phalcon\FactoryInterface
Loads Config Adapter class using 'adapter' option, if no extension is provided it will be added to filePath
<?php
use Phalcon\Config\Factory;
$options = [
"filePath" => "path/config",
"adapter" => "php",
];
$config = Factory::load($options);
Methods¶
public static load (Phalcon\Config | array $config)
protected static loadClass (mixed $namespace, mixed $config)
...