function getErrors($purge = false, $level = false)
    {
        if (!$purge) {
            if ($level) {
                if (!isset($this->_errorsByLevel[$level])) {
                    return array();
                } else {
                    return $this->_errorsByLevel[$level];
                }
            } else {
                return $this->_errors;
            }
        }
        if ($level) {
            $ret = $this->_errorsByLevel[$level];
            foreach ($this->_errorsByLevel[$level] as $i => $unused) {
                // entries are references to the $_errors array
                $this->_errorsByLevel[$level][$i] = false;
            }
            // array_filter removes all entries === false
            $this->_errors = array_filter($this->_errors);
            unset($this->_errorsByLevel[$level]);
            return $ret;
        }
        $ret = $this->_errors;
        $this->_errors = array();
        $this->_errorsByLevel = array();
        return $ret;
    }
function getErrors($purge = false, $level = false)
    {
        if (!$purge) {
            if ($level) {
                if (!isset($this->_errorsByLevel[$level])) {
                    return array();
                } else {
                    return $this->_errorsByLevel[$level];
                }
            } else {
                return $this->_errors;
            }
        }
        if ($level) {
            $ret = $this->_errorsByLevel[$level];
            foreach ($this->_errorsByLevel[$level] as $i => $unused) {
                // entries are references to the $_errors array
                $this->_errorsByLevel[$level][$i] = false;
            }
            // array_filter removes all entries === false
            $this->_errors = array_filter($this->_errors);
            unset($this->_errorsByLevel[$level]);
            return $ret;
        }
        $ret = $this->_errors;
        $this->_errors = array();
        $this->_errorsByLevel = array();
        return $ret;
    }
function getErrors ( $ purge = false , $ level = false ) { if ( ! $ purge ) { if ( $ level ) { if ( ! isset ( $ this -> _errorsByLevel [ $ level ] ) ) { return array ( ) ; } else { return $ this -> _errorsByLevel [ $ level ] ; } } else { return $ this -> _errors ; } } if ( $ level ) { $ ret = $ this -> _errorsByLevel [ $ level ] ; foreach ( $ this -> _errorsByLevel [ $ level ] as $ i => $ unused ) { // entries are references to the $_errors array $ this -> _errorsByLevel [ $ level ] [ $ i ] = false ; } // array_filter removes all entries === false $ this -> _errors = array_filter ( $ this -> _errors ) ; unset ( $ this -> _errorsByLevel [ $ level ] ) ; return $ ret ; } $ ret = $ this -> _errors ; $ this -> _errors = array ( ) ; $ this -> _errorsByLevel = array ( ) ; return $ ret ; }
Retrieve all errors since last purge

@param boolean set in order to empty the error stack
@param string level name, to return only errors of a particular severity
@return array
Retrieve all errors since last purge