我正在尝试为我们的 ZF2 应用程序设置路由。
我们有这样的 URL:
/foo/bar.json >>> should call /Controller/Foo/BarController.php
/foo/bar/123.json >>> should call /Controller/Foo/BarController.php
/foo/baz/bar.json >>> should call /Controller/FooController.php
和底层控制器结构
/Controller/Foo/BarController.php
/Controller/FooController.php
它应该通过在目录结构中查找来路由。所以/foo/baz/bar.json
应该看看是否/Controller/Foo/Baz/BarController.php
存在。如果不存在,则查找是否/Controller/Foo/BazController.php
存在,否则查找/Controller/FooController.php
并给出 404
但是,我似乎没有从 zend 文档中获得有用的信息。我查看了现有的路由器,但在我看来,这些路由器中的任何一个都不符合所需的功能。
此外,zend 文档中似乎没有任何关于创建自定义路由器的信息。
我尝试扩展 Literal 路由器并通过覆盖match()
函数并RouteMatch
在找到匹配项时返回对象来创建我自己的路由器,但它仍然给我一个 404 并通知你没有匹配的路由。
module.config 文件当然也被编辑以添加新路由器。并将其添加到可调用对象中
谁能告诉我一些关于如何编写自定义路由器的初学者,或者有人知道有关这样做的任何好信息吗?