(Yaf >=2.3.0)
Yaf_Route_Regex::assemble — 组合url
$info
[, array $query
] )根据指定参数和自定义参数将regex这个route组合成一个url
在regex route使用assemble需要在初始化时指定reverse参数,否则将不能正常工作
info
需要传入一个数组,数组的key可以为:a、:c、:m,:a表示action,:c表示controller,:m表示module。
query
用户自定义的query string,将根据此路由规则拼接在url中
Example #1 Yaf_Route_Regex::assemble()example
<?php
$router = new Yaf_Router();
$route = new Yaf_Route_Regex(
"#^/product/([^/]+)/([^/])+#",
array(
'controller' => "product", //route to product controller,
),
array(),
array(),
'/:m/:c/:a'
);
$router->addRoute("regex", $route);
var_dump($router->getRoute('regex')->assemble(
array(
':m' => 'module',
':c' => 'controller',
':a' => 'action'
),
array(
'tkey1' => 'tval1',
'tkey2' =>
'tval2'
)
)
);
以上例程的输出类似于:
string(49) "/module/controller/action?tkey1=tval1&tkey2=tval2"