Diagrama de flujo de la aplicación
En la figura que aparece a continuación podemos ver un gráfico ilustrativo de como fluye la información a través del sistema.
- El fichero index.php se usa como controlador frontal (front controller) inicializando los recursos básicos para arrancar CodeIgniter.
- La clase Router examina la petición HTTP para determinar que hay que hacer.
- Si el fichero existe en caché, se envía directamente al navegador sin pasar por la ejecución normal del sistema.
- Seguridad: Antes de ser cargado el controlador, la petición HTTP y cualquier dato enviado por el usuario se filtran por seguridad.
- El controlador carga el modelo, las librerías del núcleo, plugins, helpers y cualquier otro recurso necesario para procesar la petición.
- Finalmente la vista se renderiza enviándose al navegador para ser visualizada. Si la caché está activa, la vista se cacheará la primera vez que accedamos a ella para que sea servida por la misma la próxima vez.
Veamos a continuación el patrón MVC implementado por CodeIgniter.