Jump to content
Fórum Script Brasil
  • 0

Buffer


dedas

Question

Olá galerinha, beleza ?

Venho hoje tirar uma dúvida com relação as funções de buffer do php. Entendo o que é o buffer, mas não entendo sua utilização, não entendo quando é o mommento adequado para se utilizar essa função. Alguém poderia colocar um exemplo(pouco complexo) de utilização dessa função?

Obrigado desde já.

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

  • 0

Willian,

Isso eu entendo :) Sei que no momento em que você inicia o buffer, nada será "printado" na tela, tudo será armazenado em buffer(memória) e só depois que eu fechar o buffer e liberar espaço na memória é que vou conseguir "resgatar" os dados inseridos no buffer.

Minha dúvida é a seguinte: Qual a finalidade disso em um sistema de gerenciamento de conteúdo(por exemplo) ?

Link to comment
Share on other sites

  • 0

Segue a classe onde usei output buffering: (Antes tarde do que nunca ... =):

<?php
class View
{
    private $filename;
    private $data;

    public function __construct($filename)
    {
        $this->filename = $filename;
        $this->data = [];
    }

    public function __set($key, $value)
    {
        $this->data[$key] = $value;
    }

    public function render()
    {
        extract($this->data);
        ob_start();
        require_once $this->filename;
        return ob_get_clean();
    }

    public function __toString()
    {
        return $this->render();
    }
}
Uso:
<?php
$view = new View('homepage.php');

$view->name = 'My awesome website';
$view->version = '1.2a';

Ao imprimir $view (ou chamar o método render) o html de template.php será renderizado, substituindo as variáveis presentes no template.

Utilizo esta classe no meu sistema (MVC).

Qualquer coisa estou aí.

Um abraço.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...