Yaf_Route_Supervar::assemble()
(Yaf >=2.3.0)
组合url
说明
public Yaf_Route_Supervar::assemble(array $info[,array $query]): string
根据指定参数和自定义参数将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'"