Closed helisoncruz closed 2 years ago
Já passei por isso também. É esperado mas não considero correto. Isso ocorre devido a um método mágico que na minha visão poderia mudar. Vou propor uma alteração mais detalhada.
src/DataLayer.php
O "problema" ocorre aqui. Não vejo muito sentido nesse __get()...
O comportamento é esperado e o correto dentro de uma estrutura DataLayer pois é o que permite o controle de dados, com isso você consegue controlar o acesso a dados sensíveis, ou mesmo tratar retornos de forma dinâmica.
Imagine que você tenha um campo document com CPF, e queira voltar um 999..-87, ao criar o método document você pode tratar isso ao mesmo tempo evita o acesso ao dado abertamente.
Usando o componente percebi que quando chamo dentro de uma camada de modelo um atributo/valor retornado pelo banco, por exemplo
$this->status
e eu tiver na mesmaclass
um método como o seguintepublic function status(){...}
é executado o método no lugar do valor, isso é esperado ou é um conflito? Se esperado, qual o motivo?Isso me impossibilitou de fazer uma verificação simples, como o exemplo abaixo: