Zend Framework:
I have the following url /base/url/[number]/[string]
OR /base/url/action/controller/param/value
我想在/base/url/[number]/[string]
的情况下将其转换为
/碱/ URL /控制器/一个/动作/ 1B / 1D / [数] /名称/ [字符串]
a和b是常数(即每当我在动作的位置看到一个数字时,我使用相同的值)。
在发送动作和控制器值之前,我在哪里可以捕获它们?
答案 0 :(得分:2)
您可以在routeShutdown()中选择控制器插件中的操作和控制器(在选择路由后)或在preDispatch()中(在每个控制器调度之前)。我想你会使用routeShutdown。您有可访问的请求,因此您可以将控制器和操作设置为任何内容..
答案 1 :(得分:0)
您可以创建自定义路由来处理这种路由,并将它们分派到正确的控制器和URL。
例如:
$router = $front->getRouter();
$router->addRoute(
'my_route',
new Zend_Controller_Router_Route(
':number/:string',
array(
'controller' => 'your_controller',
'action' => 'your_action'
)
)
);