Me sirve, claro.
No entiendo bien tu clase abstracta. Ya teniendo un FrontController, yo lo que estoy haciendo ahora es definir un BasicController que:
- maneja cadenas en utf-8
- setea un estilo para la pagina
- consulta las variables de idioma
- llama a una vista que se le pasa por parametro.
Luego, genero al menos dos ramas que heredan de ese controlador. Una para mostrar las pagina, y otra para gestionar el login. Tendría que hacer algunas otras ramas para gestionar otras situaciones.
Mi inquietud es que cantidad de controladores y vistas debiera escribir. Ya tengo unos 10 controllers solo para mostrar las paginas (contenidos+menues+tagCloud), y hacer el login. Por ejemplo, para el login tengo:
-registrationController.php
-loginController.php
-lostPasswordController.php
Esos tres van asociados a una vista (loginView), y usan unas cuatro plantillas.
Me falta convertir una buena parte de mi projecto a MVC y no se bien si hacer pocos controladores superpoderosos, o varios con tareas puntuales. Por ejemplo, para controlar uploads, generar paginas nuevas, mostrar un panel de administrador, una seccion de notas para editores, etc, etc.
Quizás lo que me pasa es que aún no se usar las acciones, y que con eso se me compactaría el numero de controladores a escribir. Por ahora, todos los controladores tienen una acción index por default, que es llamada si no se pasa un parametro $_GET en especial.
Además, viendo tu codigo, que solo busca un controlador y una accion, no se bien como adaptar mi proyecto porque yo usaba la url para cambiar de lenguage también, y de ámbito. Mismo, necesitaría la url para hacer loads de diferentes paginas. Por eso en mi primera publicación hacía mucho esto:
Cita: if (isset($_GET['login']))
{
}
elseif (isset($_GET['register']))
{
}
elseif (isset($_GET['logout']))
{
}
elseif (isset($_GET['lostpassword']))
{
}
elseif (!isset($_GET['load']))
...
Vuelvo a decir que ya descarté ese método y que estoy implementando el uso de variables get que se corresponden con controladores y acciones.
En fin, gracias!