Я пытаюсь использовать маршрутизатор (AltoRouter) в первый раз и не могу позвонить на любую страницу.Маршрутизация через Php AltoRouter
структура веб-папка
Index.php
require 'lib/AltoRouter.php';
$router = new AltoRouter();
$router->setBasePath('/alto');
$router->map('GET|POST','/', 'home#index', 'home');
$router->map('GET|POST','/', 'display.php', 'display');
$router->map('GET','/plan/', 'plan.php', 'plan');
$router->map('GET','/users/', array('c' => 'UserController', 'a' => 'ListAction'));
$router->map('GET','/users/[i:id]', 'users#show', 'users_show');
$router->map('POST','/users/[i:id]/[delete|update:action]', 'usersController#doAction', 'users_do');
// match current request
$match = $router->match();
if($match && is_callable($match['target'])) {
call_user_func_array($match['target'], $match['params']);
} else {
// no route was matched
header($_SERVER["SERVER_PROTOCOL"] . ' 404 Not Found');
}
У меня есть файл с именем plan.php (план дисплея) в папке плана и гиперссылка, что я am is is
<a href="<?php echo $router->generate('plan'); ?>">Plan <?php echo $router->generate('plan'); ?></a>
whi ch не работает.
Вы можете помочь?
У меня есть домашняя страница, но я не могу назвать plan.php. На главной странице есть ссылка на план Plan, который я изменил на Plan generate('plan'); ?>. –
home # index это работает, потому что, скорее всего, у вас есть класс Home с индексом метода в нем. $ router-> map ('GET', '/ plan /', function() { требуется __DIR__. '/plan/plan.php'; }, 'plan'); Когда маршрут согласован, эта функция выше включает файл plan.php. Альтернативу вы можете создать класс 'plan' с индексом метода, а затем вы сможете передать индекс плана # так же, как и для домашней страницы. –