Php 可访问数据库的ZF3路由

Php 可访问数据库的ZF3路由,php,zend-framework3,zend-router,Php,Zend Framework3,Zend Router,我是zend framework 3的新手,我正在尝试创建一种新的路由类型,可以在数据库中搜索以匹配路由路径。我正在使用orm,不幸的是,我不知道如何在route类中注入实体管理器 我尝试为路由定义一个工厂类来访问服务管理器,但这不起作用,因为路由类必须实现Zend\Router\Http\RouteInterface,该接口声明路由类必须包含自己定义为“函数工厂($options)”的工厂 有人能帮忙吗 非常感谢。按照您提出问题的方式,您必须根据的接口和抽象编写自定义路由器策略。 例如,ZF支

我是zend framework 3的新手,我正在尝试创建一种新的路由类型,可以在数据库中搜索以匹配路由路径。我正在使用orm,不幸的是,我不知道如何在route类中注入实体管理器

我尝试为路由定义一个工厂类来访问服务管理器,但这不起作用,因为路由类必须实现Zend\Router\Http\RouteInterface,该接口声明路由类必须包含自己定义为“函数工厂($options)”的工厂

有人能帮忙吗


非常感谢。

按照您提出问题的方式,您必须根据的接口和抽象编写自定义路由器策略。 例如,ZF支持不同的URL匹配(就像在任何现代框架中一样),但您需要编写自定义路由器策略来访问数据库并返回应该执行的控制器/操作

老实说,如果您是ZF3新手,可能会尝试以稍微不太先进的方式解决问题

另一个解决方案,也许你可以创建动态路由器并传递URL\u SLUG。
然后,您将有一个操作,通过URL\u SLUG(或您选择的任何其他ID)检查应该从DB加载的内容。

在您提出问题的方式中,您必须根据的接口和抽象编写自定义路由器策略。 例如,ZF支持不同的URL匹配(就像在任何现代框架中一样),但您需要编写自定义路由器策略来访问数据库并返回应该执行的控制器/操作

老实说,如果您是ZF3新手,可能会尝试以稍微不太先进的方式解决问题

另一个解决方案,也许你可以创建动态路由器并传递URL\u SLUG。
然后您将有一个操作,您将通过URL\u SLUG(或您选择的任何其他ID)检查应该从DB加载的内容。

感谢您的回复,并对延迟响应表示抱歉。我在路由器中需要db连接的原因是因为SEO目的,客户端希望完全控制路由url。我试图覆盖路由器类,但无法使其工作。我愿意尝试一种定制的策略,但我没有找到任何关于如何做到这一点的文档。你能帮我提供一些链接或代码片段吗?非常感谢。谢谢你的回复,很抱歉回复太晚。我在路由器中需要db连接的原因是因为SEO目的,客户端希望完全控制路由url。我试图覆盖路由器类,但无法使其工作。我愿意尝试一种定制的策略,但我没有找到任何关于如何做到这一点的文档。你能帮我提供一些链接或代码片段吗?非常感谢你。