Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Setters

Boa tarde, Eu tenho uma classe com meus getters e setters Por acaso eu conseguiria instanciar dessa forma?

$class = new class()
$class->setProp1('prop')->setProp2('123);

?

2 respostas
solução!

Oi Cesar, tudo bom?

A ideia que você está procurando chama-se fluent setters. É possivel sim, você só precisa retornar a instância nos setters. Algo como:

class Class {
    private $prop1;
    private $prop2;

    // getters
    public function setProp1($prop1)
    {
        $this->prop1 = $prop1;
        // retornando a instancia
        return $this;
    }

    public function setProp2($prop2)
    {
        $this->prop2 = $prop2;
        // retornando a instancia
        return $this;
    }
}

Abraço!

Bem fácil então! Obrigado.