2014-12-07 14 views
1

Я работаю с Slim Framework. Я хотел бы сделать динамические маршруты, чтобы мои файлы index.php не были заполнены статическими маршрутами.Тонкие рамки динамические маршруты

Вместо того, чтобы это, что работает:

$app->get('/mypage', function() use ($app) { 
    $app->render('mypage.php', compact('app')); 
})->name('mypage'); 

Я хотел бы иметь что-то вроде этого (это не работает):

$app->get('/:name', function($name) use ($app) { 
    $app->render('template.php', compact('app', 'name')); 
})->name(:name); 

спасибо вам помочь!

ответ

1

->name(:name) присваивает имя маршруту. Имя должно быть строкой. Но вам не нужно это, чтобы создать динамический маршрут, вы можете просто написать

$app->get('/:name', function($name) use ($app) { 
    $app->render('template.php', compact('app', 'name')); 
}) 

Подробнее об именах маршрутов:

Обновление: выше является ответом на V2 версии Slim. Подробнее об именованных маршрутах в Slim V3 здесь: https://www.slimframework.com/docs/objects/router.html#route-names

+0

Спасибо за ваш ответ. Я попробую это! – Pureandfast

+0

Я забыл сказать вам, что я хотел бы использовать имя динамического маршрута, чтобы использовать urlFor() в моих ссылках. – Pureandfast

+0

есть ли способ создания динамических шаблонов маршрута? из массива из ключей JSON? –

Смежные вопросы