将URL作为路由参数传递时,Zend Framework路由不起作用

时间:2014-03-21 17:36:54

标签: php zend-framework zend-route zend-router

当我尝试在下面的路线中传递网址时,它会给我404错误。如果我用任何其他字符串替换URL,它就可以工作。

这是路线。

$route = new Zend_Controller_Router_Route(
                'user/logout/:preserve/:ref',
                array(
                        'action'     => 'logout',
                        'controller' => 'user',
                        'module'     => 'root',
                        'preserve' => false,
                        'ref' => ''
                )
        );
        $router->addRoute('logout', $route);

这就是我在视图中生成网址的方式。

<a href="<?php echo $this->url(array('preserve' => 1, 'ref' => $this->url()), 'logout'); ?>">Logout</a>

这是由URL视图助手生成的URL。

/user/logout/1/http%3A%2F%2Feop.localhost.com%2F

我无法弄清楚为什么这不起作用。有人可以帮忙吗?

感谢。

1 个答案:

答案 0 :(得分:0)

我设法通过将urlencode()函数应用于生成的网址来解决问题。

我希望能节省一些时间。

相关问题