Boa noite pessoal!

Estou postando aqui uma classe extremamente simples mas que facilita muito a minha vida nos projetos que desenvolvo. A idéia da classe é proporcionar uma maneira bem rápida de lidar com funções normais, como envio de formulários, funções CRUD (Create, Retrieve, Update e Delete), etc… Abaixo vou colocar o código e depois explico melhor:

class Aplicacao
{
	public function __construct()
	{
		/**
		 * Pega a função a ser executada.
		 * Pode ser passada pelo método POST como variável "__funcao": <input type="hidden" name="__funcao" value="teste" />
		 * ou direto pela URL como variável "funcao": pagina.php?funcao=teste
		 */
		$funcao = isset($_POST['__funcao']) ? $_POST['__funcao'] : isset($_GET['funcao']) ? $_GET['funcao'] : "padrao";
 
		/**
		 * Cria a array com o objeto e a função
		 */
		$f = array($this, $funcao);
 
		/**
		 * Verifica se a função pode ser "chamada" e executa
		 */
		if (is_callable($f))
			call_user_func_array($f, array());
	}
 
	/**
	 * Função padrão
	 */
	public function padrao() {}
}

Esta classe simplesmente pega o valor da variável “__funcao” enviada pelo método POST ou “funcao” enviada pelo método GET e tenta executar a função na classe. Então para usá-la você deve extender a classe Aplicação e criar todas as funções que você quiser. Segue um exemplo bem básico:

class Exemplo extends Aplicacao
{
	public function teste()
	{
		echo "Função teste executada.";
 
		$this->voltar();
 
		// Termina a execução
		exit;
	}
 
	public function teste2()
	{
		if (isset($_GET['teste']))
			echo "teste = ".$_GET['teste'];
		else
			echo "Variável 'teste' não enviada.";
 
		$this->voltar();
 
		// Termina a execução
		exit;
	}
 
	/**
	 * Função privada usada apenas para criar o link "voltar"
	 */
	private function voltar()
	{
		echo '<br /><p><a href="./index.php">Voltar</a></p>';
	}
}

Agora é só criar uma página contendo os links para o teste:

<h3>Exemplo de uso da classe Aplicacao</h3>
<div><a href="exemplo.php?funcao=teste">Função teste</a></div>
<div><a href="exemplo.php?funcao=teste2&teste=testando">Função teste2 enviando variável 'teste'</a></div>
<div><a href="exemplo.php?funcao=teste2">Função teste2 sem enviar variável 'teste'</a></div>

E o arquivo PHP (exemplo.php) que vai incluir as classes e criar a instância da classe Exemplo:

require("Aplicacao.class.php");
require("Exemplo.class.php");
 
$exemplo = new Exemplo();

É realmente muito fácil. Em breve vou postar mais exemplos de utilização da classe Aplicação.
Faça o download dos arquivos:

http://fredimachado.com.br/wp-content/plugins/downloads-manager/img/icons/winrar.gif download: aplicacao.rar (1.40KB)
added: 02/05/2009
clicks: 284
description: Classe aplicação e exemplo básico.

Espero que seja útil. Abraço!