Criando instância de classe, método e variável a partir de uma string em PHP

Olá pessoal!

1:00h da manhã! Que delícia lutar contra o sono numa sexta a noite só para programar! Ah! Nossa, delicious : (

fonte: https://mastigado.wordpress.com

Pois bem, vou deixar uma dica aqui de como instanciar métodos, classes ou variáveis a partir de uma string em PHP. Sim, eu acredito que isso vá no mesmo conceito de Reflection, mas não será isso que irei abordar hoje.

Por hora vamos lá!

“Tempo de conversa fiada acabou!”

Para instanciar uma classe a partir de uma string:


$class = "MinhaClasse";
$objeto = new $class();

Para capturar o conteúdo de uma variável a partir de uma string (isso está cheirando a ponteiro)


$valorPersonalizado = 123;
$nomevariavel = 'valorPersonalizado';
echo $$nomevariavel; // echo's 123

Para gerar e chamar uma função a partir de uma string


$funcao = 'minha_funcao';
$funcao('parametro1'); // chama minha_funcao('parametro1');

Para gerar e chamar um método a partir de uma string


$metodo = 'facaAlgumaCoisa';
$objeto = new MinhaClasse();
$objeto->$metodo(); // executa o método facaAlgumaCoisa de MinhaClasse->facaAlgumaCoisa()

fonte: http://stackoverflow.com/questions/4578335/creating-php-class-instance-with-a-string

fonte: https://mastigado.wordpress.com

fonte: http://php.net/manual/en/language.variables.variable.php

Anúncios
%d blogueiros gostam disto: