我正在使用ZendFramework构建多语言网站。
关于URL,我希望它像:
http://example.com/lang/module/controller/action
是的,我在bootstrap.php中的_initRoute()创建新的路由器:
public function _initRoutes() {
$this->bootstrap('FrontController');
$this->_frontController = $this->getResource('FrontController');
$router = $this->_frontController->getRouter();
$langRouter = new Zend_Controller_Router_Route(':lang/', array(
'lang' => 'en'
));
$defaultRouter = new Zend_Controller_Router_Route(':module/:controller/:action', array(
'module' => 'default',
'controller' => 'index',
'action' => 'index'
));
$defaultRouter = $langRouter->chain($defaultRouter);
$router->addRoute('langRoute', $langRouter);
$router->addRoute('defaultRoute', $defaultRouter);
}
它确实有效。
但是还不完整,我有两个问题:
如何设置默认语言 例如,如果URL是
http://example.com/module/controller/action
_initRoutes()仅处理"模块"作为语言
如何用语言生成网址?
类似的东西:
$ this-> url(数组('控制器' =>'','模块' =>'' ;,' action' =>''' lang' =>''))
你能帮我解决问题吗?
提前致谢。