Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 自定义模块的Zend Translate路由_Php_Zend Framework_Zend Route_Zend Translate_Zend Router - Fatal编程技术网

Php 自定义模块的Zend Translate路由

Php 自定义模块的Zend Translate路由,php,zend-framework,zend-route,zend-translate,zend-router,Php,Zend Framework,Zend Route,Zend Translate,Zend Router,如何在Zend Framework中为自定义模块(在我的例子中是管理模块)上的默认语言设置路由 我有以下代码: $langRoute = new Zend_Controller_Router_Route( ':lang/admin', array( 'lang' => 'ro', ) ); 我不想得到的是如下url: www.example.com/ro/admin/pages/add/62 www.example.com/ro/admin/pages/in

如何在Zend Framework中为自定义模块(在我的例子中是管理模块)上的默认语言设置路由

我有以下代码:

$langRoute = new Zend_Controller_Router_Route(
   ':lang/admin',
   array(
      'lang' => 'ro',
   )
);
我不想得到的是如下url:

www.example.com/ro/admin/pages/add/62
www.example.com/ro/admin/pages/index/by/date_modified/order/asc

等等。

试试这个方法会起作用:

protected function _initRoutes() {
    $langRoute = Zend_Controller_Front::getInstance ()->getRouter ();
    $langRoute->removeDefaultRoutes ();
    $route = new Zend_Controller_Router_Route(
       ':lang/:module/:controller/:action/*',
        array (
            'lang' => 'ro',
            'module' => 'admin',
            'controller' => 'index',
            'action' => 'index'
        )
    );
    $langRoute->addRoute ( 'langrouter', $route );
}

如何在运行时更改默认的
lang
当从web sit单击其他语言选项时?@AshwinP我真的不明白你的意思。在Zend Controller路由器中,你添加了默认的lang(语言)设置为“ro”,那么,如何使用将语言从ro更改为like en,nl或hi等等…我还有一个插件,init在翻译后得到用户的语言。但这不是我的问题,用户区域设置被正确检测。我只是不知道如何为模块设置它。像www.example.com/ro和www.example.com这样的链接都会路由到ro版本,就像我不想这样,但这不会发生在模块上。它可以工作,但不工作的是默认url,例如:www.example.com/admin/pages/index应该路由到默认的“ro”。你知道我应该补充什么吗?