# Yaf_Route_Regex::assemble

(Yaf >=2.3.0)

Yaf_Route_Regex::assemble — 组合 url

### 说明

public Yaf_Route_Regex::assemble(array `$info`, array `$query` = ?): ?string

根据指定参数和自定义参数将 regex 这个 route 组合成一个 url

在 regex route 使用 assemble 需要在初始化时指定 reverse 参数，否则将不能正常工作

### 参数

`info`

  需要传入一个数组，数组的 key 可以为 :a、:c、:m，:a 表示 action，:c 表示 controller，:m 表示 module。

`query`

  用户自定义的 query 字符串，将根据此路由规则拼接在 url 中

### 返回值

成功时返回 string，失败时为 `null`。

### 示例

示例 #1 Yaf_Route_Regex::assemble() 示例

`<?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"

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open