Funções com nomes variáveis em PHP, isso existe sim!

Publicado por Celso Goya em 22/12/2003

[ Hits: 9.635 ]

 


Funções com nomes variáveis em PHP, isso existe sim!



Bom, este é mais um desses recursos do PHP que tendem à paranormalidade, mas vamos lá. É possível sim, criar funções ou então sobrecarregar funções com nomes variáveis.

Para fazer isso veja o seguinte código:

// Esta é uma função simples
function teste($texto = "") {
echo($texto);
}

// Mais outra função simples
function abusandodophp($texto = "") {
return strlen($texto);
}

// Este é o nome da função que desejamos executar
$nomefuncao = "teste";

// Agora é só fazer de conta que a variável é a própria função e pronto
$nomefuncao("A Mágica está funcionando");
$nomefuncao("
");

// Vamos mudar a função que queremos executar
$nomefuncao = \"abusandodophp\";

// Agora vamos executá-la dentro de um comando que usa a precedência, ou seja, precisa ser executado de dentro para fora...
echo ($nomefuncao("Chutando o balde"));

$nomefuncao("
");

teste("Jeito normal");

[]'s
Celso Goya
moinho.net

Outras dicas deste autor

Eclipse Plugin para C/C++

Java Web Services Developer Pack

Pinguins correndo pelas janelas!

Freecraft suspenso pela Blizzard

PHP Debug

Leitura recomendada

10 dicas de otimização em programação PHP

Agilizando criação de formulários em PHP usando o laço FOR

Gerando Miniaturas de Imagens com PHP

Cuidados de segurança com o PHP

Framework PHP

  

Comentários
[1] Comentário enviado por TiagoSouza em 27/02/2012 - 14:30h

Doidera, mas não tem utilidade :D

[2] Comentário enviado por removido em 02/08/2014 - 20:12h

rsrs, isso ae todo mundo que programa em PHP conhece...

É o mesmo que:

<?php

class Teste{

public function prints($message)
{
echo $message;
}
}

function newInstance($class)
{
return new $class();
}

$Teste = newInstance("Teste");
$Teste->prints("Hello World!\r\n");



$myFunction = function($message)
{
echo $message;
};

$myFunction("xd\r\n");
?>



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts