2010-04-11 8 views
7

Esto es una pregunta académica, así que siéntase libre de salir ahora. He tenido una excavación a través de la pila por temas relacionados con la asignación de URL/Controlador de marcos MVC - especialmente éste:Estrategias de asignación de controlador URL (PHP)

PHP Application URL Routing

Hasta el momento, no puedo determinar dos prácticas:

1: dinámico mapeo a través de análisis de la cadena de URL (explotó el '/')

2: patrón de búsqueda según url para el archivo de configuración que contiene rutas disponibles

quería obtener alguna información (o enlaces a alguna otra threa ds/articles) de personas con respecto a sus puntos de vista sobre la mejor manera de abordar esta tarea.

+2

¿Cuál es tu pregunta? Usted ha dado su investigación y sus intentos, pero no hay duda. –

+0

Estoy solicitando comentarios sobre los métodos de mapeo de direcciones URL a los controladores, ya sea desde la base de usuarios de StackOverflow, o por referencia a otros artículos/hilos que han encontrado útiles. – sunwukung

Respuesta

4

Puede mezclar ambas opciones. La mayoría de los marcos lo hacen para administrar el mapeo de URL. El primero es el predeterminado y el segundo es la alternativa. Un marco php que lo usa es Zend. Puede consultar zend_router para más detalles.

+1

gracias por la respuesta. mi experiencia con ZF es la razón por la que estoy experimentando con este método, pero su clase de enrutadores es un poco impenetrable para mí si soy sincero. He recurrido a un simple análisis sintáctico de cadenas y puedo implementar una recuperación de archivos de configuración después de sus comentarios. – sunwukung

0

Utilizo su primera opción.

www.mysite.com/section1

esto se explotó y en un solo archivo que va a comprobar para ver si un controlador llamado section1 está en el servidor si es entonces que utilizo para averiguar lo que se supone Para que ocurra si no hay un controlador, entonces miro para ver si hay un archivo estático con este nombre y lo publico si el script aún no puede encontrar nada, sirve una página 404 con información útil. Esto me ha funcionado muy bien y me da mucho control sobre cómo el sitio reacciona ante diferentes situaciones.