src/ViewAbstract.php
public function render($template = null)
    {
        $this->_personalizeView();
        try {
            ob_start();

            $template = $template ? $template : $this->getBasePath() . $this->getTemplate();

            if (!file_exists($template)) {
                throw new \Exception("O caminho do template '{$template}' informado não foi encontrado :(");
            }

            extract($this->getVars(), EXTR_OVERWRITE);

            include $template;

            $this->output = ob_get_contents();

            ob_end_clean();
        } catch (\Exception $e) {
            $this->output = "<div class=\"error__view\">" .
                    "Não foi possível exibir a view solicitada.<br />" .
                    "{$e->getMessage()}" .
                "</div>";
        }

        return $this->output;
    }
public function render($template = null)
    {
        $this->_personalizeView();
        try {
            ob_start();

            $template = $template ? $template : $this->getBasePath() . $this->getTemplate();

            if (!file_exists($template)) {
                throw new \Exception("O caminho do template '{$template}' informado não foi encontrado :(");
            }

            extract($this->getVars(), EXTR_OVERWRITE);

            include $template;

            $this->output = ob_get_contents();

            ob_end_clean();
        } catch (\Exception $e) {
            $this->output = "<div class=\"error__view\">" .
                    "Não foi possível exibir a view solicitada.<br />" .
                    "{$e->getMessage()}" .
                "</div>";
        }

        return $this->output;
    }
@param null|string $template

@return string
@throws \Exception