Siempre he usado PHP de forma "normal" y en esta ocacion me gustaría implementar MVC en un proyecto
Todavia no he creado cosas, apenas estoy planificando
Tal vez sea algo muy básico pero en serio apenas empiezo con esto y de verdad me gustaría que me orientaran por favor
estructura
index.php
models/main_model.php
views/main_view.php, view1.php, view2.php, view3.php
controllers/main_controller.php
js
css
images
index.php
Código PHP:
Ver original
include "controllers/main_controller.php";
models/main_model.php
Código PHP:
Ver original
class main_model { function __construct() { //establecer conexion y seleccionar bd } function __destruct() { //cerrar la conexion } function title() { //metodo que devuelve el titulo del sitio } }
La cuestion esta aqui en el controlador
Estoy pensando en 2 casos
caso 1
controllers/main_controller.php
Código PHP:
Ver original
include "../models/main_model.php"; $obj = new main_model(); if($page == "") { include "vista1.php"; } else if($page == "contact") { include "vista2.php"; } else { include "element.php"; }
caso 2
Todo todo el contenido me lo devuelve un método, asi solo hay una vista y en esa vista llamo a dicho metodo que devuelve todo el contenido
controllers/main_controller.php
Código PHP:
Ver original
include "../models/main_model.php"; $obj = new main_model(); include "../views/main_view.php";
views/main_view.php
Código PHP:
Ver original
echo $obj->content($page);
El metodo content me devolveria todo el HTML
Pues solo he pensado en esos 2 casos
Esta bien como voy planteando el proyecto?
Cual caso me recomiendan? el 1 o el 2 o alguna sugerencia?
Saludos