Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Leandro Vieira Pinho

[Resolvido] Mini-framework para inclusão de arquivos

Recommended Posts

Bom, pensei em desenvolver um mini-framework com a seguinte intenção: evitar "trocentos" includes no início de nossas páginas. Imagine o seguinte cenário:

 

<?phpinclude('config.php');include('class.db.php');include('login.php');include('extra.php');......?>
Em certas páginas, a lista chega a ser grande e exagerada. Então, a intenção é diminuir o máximo possível.

 

Estou partindo do princípio que todas suas classes estão localizadas em um diretório, tipo: classes e todos os arquivos de inclusões estão em outro, tipo: inc.

 

Então, segue o exemplo.

 

index.php

 

<?phprequire_once('config-include.php');loadFiles('classes','class.pg1.php,class.pg2');loadFiles('inc/','bla.inc,ble.inc.php');?>

Nota: repare o nome dos diretório podem vir ou não com / no final.

Nota2: repare que o nome do arquivo pode vir ou não com a extensão .php

config-include.php

 

<?php/*** Função para incluir todos os arquivos necessários em um dado momento* @author Leandro Vieira Pinho <leandroimasters@plugsites.net>* @version 1.0* @license TOTAL FREE* @param string $dir caminho do diretório onde os arquivos estão localizados* @param string $files nome dos arquivos sem a extensão .PHP*/function loadFiles($dir,$files) {		// Verifica se o nome do diretório contém a barra no final	$barraFinalDir = substr($dir,-1);	// Acrescenta a barra no final do nome do diretório caso ela não tenha sido especificada	if ( $barraFinalDir !== '/' ) {		$dir = $dir . '/';	}	// Divide a string em várias strings, onde cada uma delas é o nome de arquivo	$files = explode(',',$files);	// Faz um loop para inclusão dos arquivos	foreach($files as $fileInclude) {		// Verifica se a extensão do arquivo foi especificada		$extensaoArquivo = substr($fileInclude,-4);				// Se não for especificado a extensão .php, acrescenta a extensão ao nome do arquivo		if ( $extensaoArquivo !== '.php') {			$fileInclude = $fileInclude . '.php';					}		// Verifica se os arquivos realmente existem; se não para o script e informado qual não existe		if ( !file_exists($dir . $fileInclude) ) {			exit('<p>O arquivo <strong>' . $fileInclude . '</strong> não foi encontrado no diretório informado: <strong>' . $dir . '</strong></p>');				} else {			// Faz a inclusão dos arquivos desejados			@include($dir . $fileInclude);		}			} // Fim do foreach de inclusão dos arquivos	} // Fim da função loadFiles?>
Bom, houve uma discussão legal aqui: http://forum.imasters.com.br/index.php?showtopic=199911. Mas mesmo assim postei este mini-framework. Caso alguém queria utilizá-lo ou melhorá-lo fique a vontade.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.