Pular para o conteúdo

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

Dica publicada em PHP / Avançado
Celso Goya Oki
Hits: 11.401 Categoria: PHP Subcategoria: Avançado
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

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");
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

[]'s
Celso Goya
moinho.net

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

10 dicas para jogar Battle for Wesnoth

Red Hat 10 ou Fedora Project?

Eclipse Plugin para C/C++

Freecraft suspenso pela Blizzard

Pinguins correndo pelas janelas!

Exemplo de conexão ao banco de dados orientada a objeto em PHP+MySQL

Integração com PagSeguro no CakePHP 2.x

Populate Object - Aumentando a produtividade de forma bastante simples (PHP + formulário HTML)

CakePHP/HtmlHelper - Fazendo submit em formulário

Nasce site sobre Zend Framework

#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

Entre na sua conta para comentar.