From: Stig Bakken Date: Sat, 16 Mar 2002 23:48:23 +0000 (+0000) Subject: * added optional layer parameter to get() method X-Git-Tag: php-4.3.0dev-ZendEngine2-Preview1~1323 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c55f61c9aaa24a751ea79ce1d0baeecdb5bbef53;p=php * added optional layer parameter to get() method * added isDefinedLayer() method --- diff --git a/pear/PEAR/Config.php b/pear/PEAR/Config.php index e8b4b610d8..1cb4c8eb59 100644 --- a/pear/PEAR/Config.php +++ b/pear/PEAR/Config.php @@ -446,7 +446,7 @@ class PEAR_Config extends PEAR } // }}} - // {{{ get(key) + // {{{ get(key, [layer]) /** * Returns a configuration value, prioritizing layers as per the @@ -458,12 +458,16 @@ class PEAR_Config extends PEAR * * @access public */ - function get($key) + function get($key, $layer = null) { - foreach ($this->layers as $layer) { - if (isset($this->configuration[$layer][$key])) { - return $this->configuration[$layer][$key]; + if ($layer === null) { + foreach ($this->layers as $layer) { + if (isset($this->configuration[$layer][$key])) { + return $this->configuration[$layer][$key]; + } } + } elseif (isset($this->configuration[$layer][$key])) { + return $this->configuration[$layer][$key]; } return null; } @@ -716,6 +720,23 @@ class PEAR_Config extends PEAR return false; } + // }}} + // {{{ isDefinedLayer(key) + + /** + * Tells whether a given config layer exists. + * + * @param string config layer + * + * @return bool whether exists in this object + * + * @access public + */ + function isDefinedLayer($layer) + { + return isset($this->configuration[$layer]); + } + // }}} }