1
resposta

[Projeto] Exercício __set

$umEndereco = new Endereco('Petropolis', 'Bairro qualquer', 'Minha rua', '71b');
$outroEndereco = new Endereco('Rio', 'Centro', 'Uma rua ai', '50');

$umEndereco->cidade = "Porto alegre";
$umEndereco->bairro = "Aguas claras";

echo $umEndereco->cidade . PHP_EOL;
echo $umEndereco->bairro . PHP_EOL;
exit();

------------------------------------------------------

public function __set($name, $value)
    {
        if (property_exists($this, $name)){
            $this->$name = $value;
        }else{
            echo "Atributo '$name' não existe";
        }
    }
1 resposta

Oi, Samuel! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Você aplicou muito bem o método mágico __set() para controlar a atribuição dinâmica de propriedades em PHP. Isso é especialmente útil em cenários onde desejamos adicionar camadas extras de verificação ou encapsulamento. Ao usar property_exists(), você garante que o atributo realmente pertence à classe antes de atribuí-lo, o que evita erros silenciosos.

Conteúdos complementares para aprofundar seus estudos em PHP:
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!