Les doy un ejemplo, si tengo como url mvc/noticias/agregar me veo con un problema a la hora de manipular la URL
Código PHP:
$event = VIEW_GET_USER;
$uri = $_SERVER['REQUEST_URI'];
$peticiones = array(SET_USER, GET_USER, DELETE_USER, EDIT_USER,
VIEW_SET_USER, VIEW_GET_USER, VIEW_DELETE_USER,
VIEW_EDIT_USER);
foreach ($peticiones as $peticion) {
$uri_peticion = $peticion;
if (strpos($uri, $peticion) == true) {
$event = $peticion;
}
}
Código PHP:
<?php
const MODULO = 'usuarios/';
// controladores
const SET_USER = 'set';
const GET_USER = 'get';
const DELETE_USER = 'delete';
const EDIT_USER = 'edit';
// vistas
const VIEW_SET_USER = 'agregar';
const VIEW_GET_USER = 'buscar';
const VIEW_DELETE_USER = 'borrar';
const VIEW_EDIT_USER = 'modificar';
?>
El script sólo compara la petición AGREGAR, puedo escribir cualquier otra cosa en la url, al script solo le importa que tenga la petición agregar. El script ignora el resto de la URL y no debería ser así, una URL tiene que ser exacta. Sin embargo si es con $_GET puedo manipular las peticiones de una manera más "exacta" digamos y además puedo manipular la URL desde el .htaccess
Me pueden orientar para encontrar la mejor solución a esto? habría alguna forma de combinar $_SERVER['REQUEST_URI'] con expresiones regulares para lograr lo que necesito? Es mejor usar $_GET y .htaccess?