Hola, mucho tiempo sin escribir.
por lo general cuando creaba una clase con objetos, al momento de crear los getters y los setters quedaba algo así:
<?php
class Clase
{
private $atributo;
function setatributo($nuevoatributo)
{
$this->atributo = $nuevoatributo;
}
function getatributo()
{
return $this->atributo;
}
}
?>
ahora “armé” una forma más “elegante” de hacer lo mismo, parecido al gran Getter y Setter de C# que por lejos es lo más elegante que hay.
<?php
class Clase
{
private $atributo;
function atributo($nuevoatributo="")
{
if(!empty($nuevoatributo))
$this->atributo = $nuevoatributo;
else
return $this->atributo;
}
}
?>
Explicación simple, si el atributo $nuevoatributo no está vacio entonces le asignamos el valor, por el contrario si está vacío devolvemos el valor de él.
En realidad no es mucho código menos, pero sirve para que se vea más presentable el código [y para evitarnos andar escribiendo get... y set
].
Saludos