From c55f61c9aaa24a751ea79ce1d0baeecdb5bbef53 Mon Sep 17 00:00:00 2001 From: Stig Bakken Date: Sat, 16 Mar 2002 23:48:23 +0000 Subject: [PATCH] * added optional layer parameter to get() method * added isDefinedLayer() method --- pear/PEAR/Config.php | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) 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]); + } + // }}} } -- 2.40.0