Wie funktioniert das MVC-Routing?

Daher habe ich angefangen, MVC (Real MVC, nicht Framework MVC) etwas eingehender zu studieren, und ich versuche, ein kleines Framework zu entwickeln. Ich lese andere Frameworks wie Symphony und Zend, sehe, wie sie ihre Arbeit machen, und versuche, sie selbst umzusetzen.

Der Ort, an dem ich hängen blieb, war das URL-Routing-System:

<?php
namespace Application\Common;

class RouteBuilder {

    public function create($name, $parameters) {
        $route           = new Route($name);
        $route->resource = array_keys($parameters)[0];
        $route->defaults = $parameters["defaults"];
        $notation        = $parameters["notation"];
        $notation = preg_replace("/\[(.*)\]/", "(:?$1)?", $notation);
        foreach ($parameters["conditions"] as $param => $condition) {
            $notation = \str_replace($param, $condition, $notation);
        }

        $notation = preg_replace("/:([a-z]+)/i", "(?P<$1>[^/.,;?\n]+)", $notation);

        //@TODO: Continue pattern replacement!!
    }
}
/* How a single entry looks like
 * "main": {
    "notation": "/:action",
    "defaults": {
        "resource"  :   "Authentication",
    },
    "conditions":   {
        ":action"   :   "(login)|(register)"
    }
},

 */

Ich kann meinen Kopf einfach nicht richtig darum wickeln. Was ist der Anwendungsworkflow von hier aus?

Das Muster wird generiert, wahrscheinlich aRoute Gegenstand, der unter dem Dach gehalten werden sollRequest Objekt oder so, was dann? Wie funktioniert es?

P.S. Auf der Suche nach einer echten, gut erklärten Antwort hier. Ich möchte das Thema wirklich verstehen. Ich würde mich freuen, wenn sich jemand die Zeit nehmen würde, eine wirklich ausführliche Antwort zu schreiben.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage