(Yaf >=2.3.0)
Yaf_Route_Supervar::assemble — 组合url
$info
[, array $query
] )根据指定参数和自定义参数将supervar这个route组合成一个url
info
需要传入一个数组,数组中每个key可为:m、:c、:a,:m代表module,:c代表controller, :a代表action
query
用户自定义的query string,将根据此路由规则拼接在url中
Example #1 Yaf_Route_Supervar::assemble()example
<?php
$router = new Yaf_Router();
$route = new Yaf_Route_Supervar('r');
$router->addRoute("supervar", $route);
var_dump($router->getRoute('supervar')->assemble(
array(
':a' => 'yafaction',
'tkey' => 'tval',
':c' => 'yafcontroller',
':m' => 'yafmodule'
),
array(
'tkey1' => 'tval1',
'tkey2' => 'tval2'
)
));
try {
var_dump($router->getRoute('supervar')->assemble(
array(
':a' => 'yafaction',
'tkey' => 'tval',
':m' => 'yafmodule'
),
array(
'tkey1' => 'tval1',
'tkey2' => 'tval2',
1 => array(),
)
));
} catch (Exception $e) {
var_dump($e->getMessage());
}
以上例程的输出类似于:
string(%d) "?r=/yafmodule/yafcontroller/yafaction&tkey1=tval1&tkey2=tval2" string(%d) "You need to specify the controller by ':c'"