Estrutura mvc php
Raiz:
Arquivos de código-fonte representam o seu código localizado na raiz do seu aplicativo. O “.htaccess” é necessário para não permitir que arquivos e pastas dentro desse aplicativo sejam acessíveis através da própria URL, e também pega toda string que foi passada na URL e joga para uma variável $key que é passada pra o arquivo “índex.php”, segue o código:
.htaccess
RewriteEngine on RewriteCond %{SCRIPT_FILENAME} !-f RewriteCond %{SCRIPT_FILENAME} !-d RewriteRule ^(.*)$ index.php?key=$1
O “índex.php” é responsável por carregar todas as classes necessárias para o funcionamento do aplicativo, definir variáveis globais que podem ser de grande ajuda durante a codificação, e inicializar o aplicativo, segue o código:
Índex.php
<?php // Inicia sessao session_start(); /* * Definição de constantes, para facilitar concatenação de strings. * RAIZ Criado para tornar dinamico a localização do site no htdocs * "sistema" é o nome da pasta raiz do programa. * *###################################################################### * Use o "RAIZ" em qualquer parte do seu código aonde um caminho de arquivo * ou pasta está sendo referenciado, se esse endereço depender diretamente * da pasta principal do programa o defined RAIZ deve ser usado. *###################################################################### */ define( 'CONTROLLERS','app/controllers/' ); define( 'VIEWS','app/views/' ); define( 'MODELS','app/models/' ); define( 'HELPERS','system/Helpers/' ); define( 'RAIZ','/sistema'); /* * Require_once importa para esse arquivo os arquivos apontados * Nesse caso ele inclui as classes principais. */ require_once('system/System.php'); require_once('system/Controller.php'); require_once('system/Model.php'); /* __autoload é usado para importar classes (arquivos) * que ainda não