使用URI值映射路由器占位符

时间:2015-12-17 08:45:59

标签: php symfony symfony-routing symfony-components

我不知道如何解释这个,所以请对我很轻松。

路由器保存uri变量键

$router = 'movie/english/{slug}/edit/(id}/{title}';

浏览器地址栏中的URI

$uri = 'movie/english/scorpion/edit/125/E01E05';

如何编写将路由器占位符变量与URI匹配值映射的代码。 E.g。

array(
    'slug' => 'scorpion',
    'id' => '125',
    'title' => 'E01E05'
);

如果您了解,请将您重定向到正确的资源。

1 个答案:

答案 0 :(得分:0)

如果我了解您正确提出的问题,可以使用str_replace通过一系列详细信息将$router转换为$uri

$router = 'movie/english/{slug}/edit/{id}/{title}';

$details = array(
    'slug' => 'scorpion',
    'id' => '125',
    'title' => 'E01E05'
);

$uri = str_replace(array('{slug}','{id}','{title}'), $details, $router);

echo $uri;
// movie/english/scorpion/edit/125/E01E05