Location: PHPKode > scripts > SMVC > smvc/index.php
<?php
$mark1=microtime();
/**
 * Smvc - Simple MVC
 * @package SMVC
 * @author Paulo Rocha
 * @copyright 2009 - 2009 Ahcor Design
 * @license		http://smvc.tk/manual/license.html
 * @link		http://smvc.tk
 * @since		Version 0.01
 * @filesource	http://smvc.tk/download
 * @category	Index
 * @uses		Enter point for SMVC
 */
session_start();
define('STATUS','true');
//instancia as classes principais = Configurações e DataBase.
$Smvc_config= new Smvc_config;
$Smvc_db= new Smvc_db;
//Desvia a execução para a função de tratamento de erros quando houver erros no sistema
@trigger_error("");
$erros = set_error_handler("trata_erros");
//carrega o controller (e função) default ou determinada pela URL.
	if(file_exists(strtolower(CONTROLLERS.$Smvc_config->ctrl.'.php'))){	
		require_once (strtolower(CONTROLLERS.$Smvc_config->ctrl.'.php'));		
		$class = ucfirst($Smvc_config->ctrl);
		$controller = new $class;
		if ($Smvc_config->funcao==false){$controller->index();}else{
			echo $controller->{$Smvc_config->funcao}($Smvc_config->parametros);}
		}else{
			echo "chegou!";
			require_once(VIEWS."off.php");		
		}
//Funções que carregam as classes automaticamente.
function __autoload($class_name)
{
    includeclass($class_name);
}	
function includeclass($class_name){
	$locais=array('_smvc/','_model/','_ctrl/','_view/','_library/','_drive/');
	foreach($locais as $loc)
	{
		if(file_exists($loc.strtolower($class_name).'.php'))
		require_once($loc.strtolower($class_name) . '.php');
	}
}
//Função de tratamento de erros - grava um log de erro e sinaliza no browser(faze de depuração).
function trata_erros($num,$msg,$file,$line)//captura os erros do sistema:
{	
	if($msg==""){return false;}
	$data=date("d/m/y");
	$hora=date("H:i:s");
	file_put_contents(PATH."_smvc/log.txt","||$num|$msg|$line|$file|$data|$hora",FILE_APPEND);
	echo "<p align='right' style='position:fixed; bottom:0; left:0; color:#666; font-size:9px; font-family:Verdana,Tahoma;'>ERRO=$num|$msg|$file - ($line)|<p>";
	//echo '<div align="center">Erro no sistema!<br><a href="'.URL.'">voltar.</a></div>';
	
	//O código a seguir é para mostrar o conteúdo do LOG - TODO: deve ser criado uma plicação para isso.
/*	$xxx=file_get_contents(PATH."_smvc/log.txt");
	$valor=explode("||",$xxx);
	$valor=explode("|",$valor[1]);*/
	//require_once(VIEWS.'erro.php');	
}
//mostra o uso de memória e tempo de execução total - setar a constante STATUS habilitará a exibição.
if(defined('STATUS')){	
echo '<p align="right" style="position:fixed; bottom:0; right:0; color:#666; font-size:9px; font-family:Verdana,Tahoma;">Mem. '.number_format(intval(memory_get_usage()/1000), 0, ',', '.').' Kb ('.number_format(intval(memory_get_peak_usage()/1000),0,',','.').' Kb) | ';
echo number_format((microtime()-$mark1),3,',','.').' Seg.</p>';
}
?>

Return current item: SMVC