original_string: static function getConfigValue($heading, $key, $default = null)
      {
          // if we haven't read config file yet, do so.
          if (!isset(self::$_config)) {
              // read/stat INI once and only once per request
              self::$_config = parse_ini_file(CONFIG_FILE, true);
          }
  
          if (isset(self::$_config[$heading][$key])) {
              return self::$_config[$heading][$key];
          } elseif (isset($default)) {
              return $default;
          } else {
              return false;
          }
      }
code: static function getConfigValue($heading, $key, $default = null)
      {
          // if we haven't read config file yet, do so.
          if (!isset(self::$_config)) {
              // read/stat INI once and only once per request
              self::$_config = parse_ini_file(CONFIG_FILE, true);
          }
  
          if (isset(self::$_config[$heading][$key])) {
              return self::$_config[$heading][$key];
          } elseif (isset($default)) {
              return $default;
          } else {
              return false;
          }
      }
code_tokens: static function getConfigValue ( $ heading , $ key , $ default = null ) { // if we haven't read config file yet, do so. if ( ! isset ( self :: $ _config ) ) { // read/stat INI once and only once per request self :: $ _config = parse_ini_file ( CONFIG_FILE , true ) ; } if ( isset ( self :: $ _config [ $ heading ] [ $ key ] ) ) { return self :: $ _config [ $ heading ] [ $ key ] ; } elseif ( isset ( $ default ) ) { return $ default ; } else { return false ; } }
docstring: return value from toolkit config file, or a default value, or false if not found.
  method is static so that it can retain its value from call to call.
  
  @todo store in Zend Data Cache to avoid reading during each request
  
  @todo change getConfigValue to allow getting many at one time
  
  @param $heading
  @param $key
  @param null $default
  @return bool|null
docstring_tokens: return value from toolkit config file or a default value or false if not found . method is static so that it can retain its value from call to call .