0
respostas

implementando metodo magico __set

funcionou assim:


namespace Estudo\Casa\Modelo;

class Endereco
{

  private $rua;
  private $numero;
  private $bairro;
  private $cidade;
  private $cep;

  public function __construct(string $rua, string $numero, string $bairro, string $cidade, string $cep)
  {
    $this->rua = $rua;
    $this->numero = $numero;
    $this->bairro = $bairro;
    $this->cidade = $cidade;
    $this->cep = $cep;

  }

  public function getRua(){
    return $this->rua;
  }

  public function getNumero(){
    return $this->numero;
  }

  public function getBairro(){
    return $this->bairro;
  }

  public function getCidade(){
    return $this->rua;
  }

  public function getCep(){
    return $this->cep;
  }

  public function __get($nomeAtributo)
  {
    $metodo = "get". ucfirst($nomeAtributo);
    return $this->$metodo();
  }

  public function __set($atributo, $valor) {
      $this->$atributo = $valor;
  }


}

 ?>
<?php
require_once 'autoload.php';

use Estudo\Casa\Modelo\Endereco;

//string $rua, string $numero, string $bairro, string $cidade, string $cep
$end = new Endereco("Rua dos bobos", "0", "Toquinho", "Aquarela", "99999-99");
echo $end->rua;

$end->rua="Joao 23";

echo $end->rua;

 ?>