Роутинг для стилей и скриптов

123
03 сентября 2019, 09:10

Вопрос следующий: Как сделать роутинг для css / js?

Ниже реализован роутинг для вызова контроллера согласно URL. Так же указываю файловую архитектуру - скриншотом ниже.

<?php
require_once 'ErrorController.php';
class Router
{
    static function start()
    {
        // Дефолтный контроолер, действие
        $controller_name = 'Main';
        $action_name = 'getPage';
        $routes = explode('/', $_SERVER['REQUEST_URI']);
        // Если задан роутинг (/index) в URL, то присваиваем, иначе остаётся дефолтный, объявленный выше
        if (!empty($routes[1])) {
            $controller_name = $routes[1];
        }
        // Если задан активити в URL, то присваиваем, иначе остаётся дефолтный, объявленный выше
        if (!empty($routes[2])) {
            $action_name = $routes[2];
        }
        // Формируем переменную с наименованием файла класса и путь к классу
        $controller_file = $controller_name . '.php';
        $controller_path = dirname(__FILE__)."\\".$controller_file;
        // Объект класса Error (вызванный из другого метода, в котором инициализуруются поля)
        $errorPageNotFound = getPageNotFound();
        $errorMethodNotFound = getMethodNotFound();
        // Если существует файл класса и метод для вызова, то вызываем метод отображения UI, иначе редирект с ошибкой на главную
        if (file_exists($controller_path)) {
            include $controller_path;
            $controller = new $controller_name;
            $action = $action_name;
            if (method_exists($controller, $action)) {
                $controller->$action();
            } else {
                Router::ErrorPage($errorMethodNotFound->getCodeError(), $errorMethodNotFound->getErrorDescription());
            }
        } else {
            Router::ErrorPage($errorPageNotFound->getCodeError(), $errorPageNotFound->getErrorDescription());
        }
    }
    static function ErrorPage($code, $description)
    {
        $host = 'http://' . $_SERVER['HTTP_HOST'] . '/';
        header('HTTP/1.1 ' . $code . $description);
        header('Status: ' . $code . $description);
        header('Location:' . $host);
    }
}
READ ALSO
Кодировка файла, получаемого php-скриптом

Кодировка файла, получаемого php-скриптом

Вопрос по поводу функций, связанных с кодировкойПолучаю данные curl()-ом с сайта, кодировка на котором установлена windows-1251

89
Двойной пост запрос или как это сделали?

Двойной пост запрос или как это сделали?

Всём приветЕсть сайт на котором хранятся виртуальные финансы для сайта и система зачисления, вывода, перевода между пользователями и т

116
Как настроить webpack dev server на обновление php файлов?

Как настроить webpack dev server на обновление php файлов?

Всем доброго времени суток, недавно начал работать с webpackНастроил его для раработы и все вроде бы хорошо, но вот мне понадобилось изменить...

117
Как правильно создать ЧПУ из заголовка новости (title)?

Как правильно создать ЧПУ из заголовка новости (title)?

Нашел функцию преобразующую заголовки на русском и казахском языках в английские буквы

98