Sobes.tech
Junior — Middle

Pode explicar o princípio de encapsulamento em PHP e como ele é implementado na programação orientada a objetos?

sobes.tech IA

Resposta da IA

A encapsulação em PHP é um mecanismo de programação orientada a objetos que permite ocultar os detalhes internos da implementação de um objeto e fornecer acesso a eles apenas através de métodos específicos.

Em PHP, a encapsulação é implementada usando modificadores de acesso:

  • public — acesso aberto a todos.
  • protected — acesso apenas dentro da classe e seus herdeiros.
  • private — acesso apenas dentro da própria classe.

Exemplo:

class User {
    private $password; // propriedade oculta

    public function setPassword($pass) {
        // pode adicionar uma verificação ou hashing
        $this->password = password_hash($pass, PASSWORD_DEFAULT);
    }

    public function verifyPassword($pass) {
        return password_verify($pass, $this->password);
    }
}

$user = new User();
$user->setPassword('secret');
var_dump($user->verifyPassword('secret')); // true

Assim, a encapsulação ajuda a proteger os dados do objeto do acesso e alteração direta, garantindo controle através dos métodos da classe.