A front controller is one entry point and a router

An application with a PHP file per page has its bootstrap copied into every one of them — session start, config include, database connection, the auth check somebody added later and only to some of them. Adding one more line to that list means editing forty files and missing three. A front controller inverts the arrangement: every request enters through one file, which then decides what to run.

// public/index.php — the only file the web server ever executes
require __DIR__ . '/../bootstrap.php';

$routes = array(
    '#^/products/([a-z0-9-]+)$#' => array('ProductController', 'show'),
    '#^/basket$#'                => array('BasketController', 'index'),
);

$path = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);

foreach ($routes as $pattern => $target) {
    if (!preg_match($pattern, $path, $matches)) {
        continue;
    }

    list($class, $method) = $target;

    echo call_user_func_array(
        array(new $class(), $method),
        array_slice($matches, 1)
    );

    return;
}

header('HTTP/1.1 404 Not Found');
require __DIR__ . '/../views/404.php';

There are two halves and only the second is the pattern. The first is a rewrite rule — RewriteCond %{REQUEST_FILENAME} !-f and a RewriteRule ^ index.php [QSA,L] in .htaccess, or try_files under nginx — which sends anything that is not a real file to the one entry point. The second is the routing table, which turns a path into a callable. What this buys is that bootstrap exists once, so adding a request id to every log line or a maintenance check becomes one edit instead of forty. What it costs is discoverability: the URL no longer tells anyone which file to open, which is a genuine loss on a site of six pages and the reason to resist the pattern until the duplication actually hurts. The other cost is a new single point of failure — move the application to a host where AllowOverride is off and every page 404s at once, including the error page. Keep the router matching paths to callables and nothing else; the moment it starts making authorisation or view decisions it becomes the file everyone is afraid of.