Estoy empezando a explorar el patrón de diseño MVC y me surgen algunas dudas. Quiero saber si esto es válido: tengo un index.php en la raíz. Puedo usar solamente ese index para mostrar el resto de la página, y que cambie de contenido según variables GET? Por ejemplo, para mostrar una página de Contacto, en vez de crear otra página para 'Contacto', simplemente con escribir index.php?ejecutar=contacto llamo a un controlador para que me muestre el contenido de 'Contacto'? Quedaría algo así, no es el código completo pero es lo que quiero explicar, el código completo tiene más modificaciones:
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>Ejemplo</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div id="contenido">
<?php
if( $_GET['ejecutar']=="contacto" ){
include_once( "sistema/controlador/contacto.php" );
$home = new contactoClase();
$home->cargar();
}else{
include_once( "sistema/controlador/inicio.php" );
$home = new inicioClase();
$home->cargar();
}
?>
</div>
</body>
</html>
contacto.php e inicio.php serían controladores para procesar modelos y vistas, bueno, eso es lo que entendí del MVC. Y que con index?ejecutar=contacto me muestre un contenido y sin esa variable simplemente muestre el contenido de la página de inicio, eso está bien? tiene sentido? Espero no estar haciendo una torpeza, pero por los ejemplos que estoy viendo me parece que se suele hacer esto y que es más práctico, personalmente me es más cómodo y ordenado, luego pienso adaptar las urls con .htaccess. Pero tal vez estoy terriblemente equivocado, algún consejo?