Métodos Get e Set Dinâmico em PHP

Criando métodos Get e Set. Uma forma fácil e dinâmica de usar métodos Get e Set com PHP. Você já deve ter usado os métodos GET e SET dentro da Classe para pegar ou passar um valor para outro método, e notou que fica um código muito comprido dependendo do tanto de GET e SET for utilizar nessa classe. Existe uma forma de colocar muitos métodos GET e SET em poucas linhas usando um array que pode ser declarado como método Público , Privado ou Protegido . Organizando o projeto. Primeiro vamos criar três arquivos PHP. ·          Index.php ·          Produto.php ·          GetSetDinamico.php Arquivo index. Vamos usar esse arquivo para instanciar a Classe produto e um método para mostrar o resultado. Os valores podem vir pelo banco de dado como um array de objeto, mas vou criar um array de objeto no arquivo para demonstrar. Index.php <?php require_once"Produto.php"; $arrayProduto = [     "NomeProduto" =>

PHP Orientado a Objetos – Namespace




PHP Orientado a Objetos – Namespace.



Em algum momento durante o desenvolvimento pode acontecer de existir classes com nomes iguais, porem estando em pasta diferente.
Até aí tudo bem, o problema é quando tenta instancia essas classes no mesmo documento e com isso vem à mensagem de erro.
Para resolver esse problema é usado o “Namespace”.

O que é namespace?

Namespace é uma forma de certificar-se que todos os nomes em um programa são únicos e podem ser usados sem qualquer conflito.

Como usar?

Para isso vamos ter que criar 2 pastas com nomes diferentes e dentro de cada uma um arquivo cujo a classe tenha o mesmo nome da outra. E fora dessas duas pastas no mesmo nível vai ter um arquivo que vai fazer a instancia das duas classes.

Pastas

Para fazer o namespace é simples, basta colocar após a palavra “namespace” um nome que tenha referência ao local.

Código da pasta Models.


<?php
namespace modelsProdutos;

class Produto{
                public function mostrarProduto(){
                               echo "Mostrando produto da pasta models";
                }
}

 ?>

Código da pasta Classes.


<?php
namespace classProdutos;

class Produto{

                public function mostrarProduto(){
                               echo "Mostrando produto da pasta classes";
                }

}

 ?>

Veja que a classe tem o mesmo nome da outra, mas o namespace é diferente.

Como instancia uma classe com namespace?

Para isso tem que fazer um require_once ou include do arquivo da pasta e fazer a instancia.
Após o nome “new” você vai colocar o nome do namespace e o nome da classe.

Veja o exemplo.

<?php
require_once "classes/produtos.php";
require_once "models/produtos.php";

$produtos = new \classProdutos\Produto();
$produtos->mostrarProduto();

echo "<br><br>";

$produtos = new \modelsProdutos\Produto();
$produtos->mostrarProduto();

 ?>

De forma simples o código continua organizado e sem a possibilidade das duas classes se conflitarem.


Comentários

Postagens mais visitadas deste blog

Métodos Get e Set Dinâmico em PHP

PHP Orientado a Objetos – criando Classes, Atributos e Métodos

PHP Orientado a Objetos – criando Atributos e Métodos Estáticos.

O que é back-end ?

Essa forma de desenvolvimento se relaciona com o que está por trás das aplicações desenvolvidas na programação. Ou seja, tudo que dá estrutura e apoio às ações do usuário da máquina é chamado de back-end.

Quando acessamos um site, por exemplo, por trás de toda sua apresentação amigável esteticamente, há uma comunicação das informações trocadas entre banco de dados e navegador. Portanto, por trás da interface gráfica do realizador, o back-end está sempre agindo.