Я смотрю библиотеку маршрутизатора danny vankooten here. Это выглядит хорошо (хотя не уверен, как он будет обрабатывать проект от среднего до большого, например, сайт электронной коммерции). Теперь, отправляясь на примере этого отображенияОтображение нескольких маршрутов (контроллера) с использованием маршрутизатора
$router->map('GET','/', 'home.php', 'home');
$router->map('GET','/home/', 'home.php', 'home-home');
$router->map('GET','/plans/', 'plans.php', 'plans');
$router->map('GET','/about/', 'about.php', 'about');
$router->map('GET','/contact/', 'contact.php', 'contact');
$router->map('GET','/tos/', 'tos.html', 'tos');
Пусть говорим, у меня есть сценарий, где мой сайт имеет 20-30 статических страниц или около около 50 контроллеров с 2-3 действиями/методом каждым.
Как их сопоставить. Если я использую вышеуказанный метод сопоставления, я, вероятно, в конечном итоге получаю более 100 строк отображения, и это выглядит неправильно.
Я считаю, что должна быть так или короткие разрезы/подстановочной как проверить, есть ли страница или контроллер доступен, а затем загрузить его, либо бросить 404.
Как отобразить все маршруты на правильном пути ?.
PS. Предоставление щедрости 50 для всех, кто хочет ответить, как использовать указанный маршрутизатор, используя подстановочный знак для соответствия контроллеру/методу.
Я смотрю на то, в соответствии с вашим предложением, но я не уверен, что код, который вы публикуемую ... Надеясь на несколько ответов. Благодарю вас за предложение. –
даже в строке есть способ сделать массив, но он будет таким же, как писать много строк и делать нагрузку на файл как '$ pages = array ( array ('GET', '/', 'target.php ',' name '), массив (' GET ','/target ',' target2.php ',' name2 '), массив (' GET ','/target2 ',' target3.php ', null) // .. и все определенные массивы ); foreach ($ pages as $ page) { $ router-> map ($ page [0], $ page [1], $ page [2], $ page [3]); } ' –