1
resposta

Minha solução

Passando o novo valor para o atributo. $endereco->cidade = "nova cidade";

criação do método magico.

  public function __set($nomeAtributo, $valor):void
    {
        $metodo = 'set' . ucfirst($nomeAtributo);
        $this->$nomeAtributo = $valor;
    }

    ps: O atributo já criado não pode ser readonly.
1 resposta

Olá Xossy! Tudo bem?

Gostaria de agradecer por compartilhar sua solução conosco :) Parabéns pelo exercício!

O seu código está funcionando, mas só um detalhe, que a linha:

$metodo = 'set' . ucfirst($nomeAtributo);

Esta linha não está sendo usada em nenhum lugar. Então neste caso você poderia retirá-la

Espero ter ajudado, bons estudos :)