Add $default param to getConfig() method

- Pico::getConfig()
- AbstractPicoPlugin::getPluginCongif()
This commit is contained in:
Daniel Rudolf 2017-08-05 00:19:03 +02:00
parent 8138212a27
commit 32ae70f398
No known key found for this signature in database
GPG key ID: A061F02CD8DE4538
2 changed files with 21 additions and 17 deletions

View file

@ -150,22 +150,23 @@ abstract class AbstractPicoPlugin implements PicoPluginInterface
* the config array
*
* @param string $configName optional name of a config variable
* @return mixed returns either the value of the named plugin
* config variable, null if the config variable doesn't exist or the
* plugin's config array if no config name was supplied
* @param mixed $default optional default value to return when the
* named config variable doesn't exist
* @return mixed if no name of a config variable has been
* supplied, the plugin's config array is returned; otherwise it
* returns either the value of the named config variable, or, if the
* named config variable doesn't exist, the provided default value
* or NULL
*/
public function getPluginConfig($configName = null)
public function getPluginConfig($configName = null, $default = null)
{
$pluginConfig = $this->getConfig(get_called_class());
if ($pluginConfig) {
if ($configName === null) {
return $pluginConfig;
} elseif (isset($pluginConfig[$configName])) {
return $pluginConfig[$configName];
}
$pluginConfig = $this->getConfig(get_called_class(), array());
if ($configName === null) {
return $pluginConfig;
}
return null;
return isset($pluginConfig[$configName]) ? $pluginConfig[$configName] : $default;
}
/**

View file

@ -901,14 +901,17 @@ class Pico
* @see Pico::setConfig()
* @see Pico::loadConfig()
* @param string $configName optional name of a config variable
* @return mixed returns either the value of the named config
* variable, null if the config variable doesn't exist or the config
* array if no config name was supplied
* @param mixed $default optional default value to return when the
* named config variable doesn't exist
* @return mixed if no name of a config variable has been
* supplied, the config array is returned; otherwise it returns either
* the value of the named config variable, or, if the named config
* variable doesn't exist, the provided default value or NULL
*/
public function getConfig($configName = null)
public function getConfig($configName = null, $default = null)
{
if ($configName !== null) {
return isset($this->config[$configName]) ? $this->config[$configName] : null;
return isset($this->config[$configName]) ? $this->config[$configName] : $default;
} else {
return $this->config;
}