O método __destruct é executado automaticamente quando não há referência para um objeto? E se nada for passado no método __destruct, mesmo assim ele fará a limpa?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
O método __destruct é executado automaticamente quando não há referência para um objeto? E se nada for passado no método __destruct, mesmo assim ele fará a limpa?
Olá Felipe,
É isso mesmo, quando não houver mais referências para o objeto vai ser chamado o seu método __destruct() e depois ele vai ser apagado da memória, e mesmo que o método __destruct() esteja vazio ou que você não tenha criado esse método a limpeza vai ocorrer normalmente.
Fala, Felipe.
Caso o método __destruct não exista ou esteja vazio, ele simplesmente não será executado, mas sim, o GC do PHP vai limpar o objeto da memória sem problemas.