PHP

Overload de Propriedades e Métodos em PHP


Essa dica é velha mas sempre é útil:

__get( $propriedade ) {}

Estoura quando se tenta ler o conteúdo de um atributo que não exista na sua classe. O parâmetro que ela recebe sempre será o nome da atributo inexistente.

Por exemplo:

class casa {

function __get( $propriedade ) {

throw new Exception(“A propriedade $propriedade não existe no objeto ” . get_class($this) );

}

}

__set( $propriedade, $valor ) {}

Exatamente como a de cima, porém, como é de se perceber, só estoura quando se tenta atribuir algum valor a um atributo inexistente. O primeiro o parâmetro é o nome do atributo, o segundo o valor. Acho que não precisa de exemplo neh ? Qualquer coisa adapte o de cima….

__call( $metodo , $argumentos ) {}

Este útimo serve para a chamada de métodos inexistentes… O primeiro parâmetro, obviamente é o nome do método e o segundo parâmetro é um array com os valores passados como parâmetros.


I'm Pedro Mendes, a passionate developer and technology enthusiast. This blog covers programming and technology in the broadest sense possible. It's the place I collect my thoughts, work and findings to share with the public.

View Comments