public function terminateOutputBuffering($level = 0, $response = null)
    {

        // close response stream before terminating output buffer
        // and only if response is an instance of
        // \Psr\Http\ResponseInterface
        if ($response instanceof ResponseInterface) {
            $body = $response->getBody();
            if ($body->isReadable()) {
                $body->close();
            }
        }

        // Command line output buffering is disabled in cli by default
        if ($this->isCli()) {
            return [];
        }

        // $level needs to be a numeric value
        if (!is_numeric($level)) {
            $level = 0;
        }

        // force type casting to an integer value
        if (!is_int($level)) {
            $level = (int)$level;
        }

        // avoid infinite loop on clearing
        // output buffer by set level to 0
        // if $level is smaller
        if (-1 > $level) {
            $level = 0;
        }

        // terminate all output buffers until $level is 0 or desired level
        // collect all contents and return
        $content = [];
        while (ob_get_level() > $level) {
            $content[] = ob_get_clean();
        }
        return $content;
    }
public function terminateOutputBuffering($level = 0, $response = null)
    {

        // close response stream before terminating output buffer
        // and only if response is an instance of
        // \Psr\Http\ResponseInterface
        if ($response instanceof ResponseInterface) {
            $body = $response->getBody();
            if ($body->isReadable()) {
                $body->close();
            }
        }

        // Command line output buffering is disabled in cli by default
        if ($this->isCli()) {
            return [];
        }

        // $level needs to be a numeric value
        if (!is_numeric($level)) {
            $level = 0;
        }

        // force type casting to an integer value
        if (!is_int($level)) {
            $level = (int)$level;
        }

        // avoid infinite loop on clearing
        // output buffer by set level to 0
        // if $level is smaller
        if (-1 > $level) {
            $level = 0;
        }

        // terminate all output buffers until $level is 0 or desired level
        // collect all contents and return
        $content = [];
        while (ob_get_level() > $level) {
            $content[] = ob_get_clean();
        }
        return $content;
    }
public function terminateOutputBuffering ( $ level = 0 , $ response = null ) { // close response stream before terminating output buffer // and only if response is an instance of // \Psr\Http\ResponseInterface if ( $ response instanceof ResponseInterface ) { $ body = $ response -> getBody ( ) ; if ( $ body -> isReadable ( ) ) { $ body -> close ( ) ; } } // Command line output buffering is disabled in cli by default if ( $ this -> isCli ( ) ) { return [ ] ; } // $level needs to be a numeric value if ( ! is_numeric ( $ level ) ) { $ level = 0 ; } // force type casting to an integer value if ( ! is_int ( $ level ) ) { $ level = ( int ) $ level ; } // avoid infinite loop on clearing // output buffer by set level to 0 // if $level is smaller if ( - 1 > $ level ) { $ level = 0 ; } // terminate all output buffers until $level is 0 or desired level // collect all contents and return $ content = [ ] ; while ( ob_get_level ( ) > $ level ) { $ content [ ] = ob_get_clean ( ) ; } return $ content ; }
Close response stream and terminate output buffering

@param int $level
@param null|\Psr\Http\Message\ResponseInterface $response
@return array
Close response stream and terminate output buffering