Compartilhar Variaveis entre Classes
Bom pessoal, seguinte.
A um bom tempo trabalho com classes, e já fiz até mesmo sistemas complexos com elas e tudo mais.
Mas agora minha dúvida é a seguinte, estou criando um projeto na empresa que trabalho que será um dos maiores e mais complexos que já fiz.
No momento estou programando sozinho mas a idéia é que futuramente haja uma equipe aqui, e como o sistema que estou criando será um novo serviço que a empresa que trabalho irá comercializar, quero fazer tudo da forma mais organizada possível para facilitar o entendimento de até mesmo futuros integrantes da equipe.
No inicio eu ia desenvolver em CakePHP, estava estudando ele e tudo mais, peguei bem o conceito e a idéia mas na prática a dificuldade para lidar com novos comandos com o prazo que tenho me fizeram optar em voltar para o "PHP cru".
Minha dúvida é a seguinte, no CakePHP vi uma coisa que achei muito interessante.
A forma com que tudo ficava organizado pelas classes serem estanciadas em variaveis que podem ser chamadas de qualquer lugar da aplicação.
Ou seja.
Função Link na Class HTML era chamada dessa forma em qualquer local da aplicação.
$html->link()
Eu gostei da forma com que ficou tudo organizado para fazer o uso das funções criadas.
Eu gostaria de fazer isso no sistema que estou gerando.
Então criei uma Class chamada Configurações e instanciei ela assim na minha index.
(Obs: estou utilizando a função __autoload)
$config = new Configuracoes();
Dentro da index eu consigo chamar as funções dela.
Exemplo:
$config->erros();
Agora dentro de outras classes e includes ele não executa.
A forma que sempre fazia era usando o extends das classes, então tudo ficava dentro de $this
Exemplo:
$this->erros();
Todo o lugar era this, this, this as vezes tinha que deixar funções com nomes diferentes do que eu queria para não conflitar com outra de outra classe.
As duas únicas formas que encontrei para fazer isso foram.
Declarando as classes novamente em cada função.
$config = new Configuracoes();
Ou utilizando a variavel global, que das duas opções é a melhor mais ainda assim tem que ser usada dentro de cada função que eu precisar chamar a variavel.
O que acaba sendo muito chato além de poluir o código.
global $config;
Alguém conhece alguma forma de fazer isso de forma automatizada (como o autoload) ou mais simples?
Porque dessa forma pra mim não está compensando.
Vlw a atenção.
To no aguardo, até mais.
Discussão (5)
Carregando comentários...