06.30.08
Dados em funções/classes s/globais
O titulo pode não ser o mais explicativo do que na realidade o artigo trata mas foi o que se arranjou… Caso tenham sugestões de um melhor, estou aberto a sugestões. Passando ao artigo…
Enquanto andava a tentar arranjar a melhor forma de ir buscar as configurações de um portal, como por exemplo, nome, versão, dados para ligar à base de dados, etc para um sistema de gestão de conteúdos baseado em classes e funções utilizando php versão 5 e já a pensar em alguns aspectos da versão 6, decidi que não iria utilizar globais em caso algum, assim para fazer chegar ao interior de uma função ou classe necessitaria de outro método que não o global $string, ou através de define ou então através da passagem de argumentos como funcao($config, $data). E então surgiu-me a ideia de ir buscar os dados aos ficheiros através de uma classe. O que facilitou imenso o trabalho, e fica bem legivel e fácil de utilizar.
class config {
/**
* Get config informations
* @param string needed
*/
public function get($str)
{
require FILES_PATH . ‘conf/ficheiro.php’;
$needed = $$str;return $needed;
}}
Depois, para ir buscar um valor ao ficheiro é bastante simples o processo, como podemos ver no exemplo em baixo, o qual vai procurar o nome do template que vai ser utilizado.
function load_template ($tpl)
{
if($tpl == ‘normal’) require (FILES_PATH . ‘lib/tpl/’ . config::get(‘template’) . ‘/main.php’);
elseif($tpl == ‘admin’) require (FILES_PATH . ‘lib/tpl/’ . config::get(‘template’) . ‘/admin/main.php’);
}
Como vêm é muito fácil. Espero que tenha sido útil. Alguma correcção, ou sugestão…
Até à próxima.
joaoqalves disse,
Julho 5, 2008 às 21:09:16
Interessante
Já tenho feito algo parecido que até já tem mais umas funçõezitas (mas acho que PERDI essa classe :O) . Mas sim, está boa a ideia