位置: IT常识 - 正文
推荐整理分享php之Symfony框架设置路由(php框架 hyperf),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:php框架ci,php框架yaf,php框架 hyperf,php框架yaf,php框架yii,php框架ci,php框架yaf,php框架ci,内容如对您有帮助,希望把文章链接给更多的朋友!
路由对于框架的作用,我们已经在配置不同框架时了解到了。不过每个框架添加路由,发挥的作用还是有一些小区别的。以Symfony框架为例,主要是为了获取方法和创建相关的复杂路由。下面我们就Symfony框架设置路由的目的进行分析,然后就具体的设置步骤分享给大家。
一、路由作用
//src/AppBundle/Controller/BlogController.phpnamespaceAppBundle\Controller;useSymfony\Bundle\FrameworkBundle\Controller\Controller;useSensio\Bundle\FrameworkExtraBundle\Configuration\Route;classBlogControllerextendsController{/***Matches/blogexactly**@Route("/blog",name="blog_list")*/publicfunctionlistAction(){//...}/***Matches/blog/***@Route("/blog/{slug}",name="blog_show")*/publicfunctionshowAction($slug){//$slugwillequalthedynamicpartoftheURL//e.g.at/blog/yay-routing,then$slug='yay-routing'//...}}这两条路由的作用是:
如果用户访问 /blog, 将会匹配第一条路由, 并执行listAction()
如果用户访问 /blog/*, 第二条路由将会被匹配到, showAction()方法被执行。因为路由是 /blog/{slug}, $slug变量会被传给showAction. 例如, /blog/yay-routing, $slug 会等于 yay-routing
这就是Symfony路由器的目的: 把URL映射到控制器。随着时间的推移, 会了解到所有的方法, 可以轻而易举地创建更复杂的路由。
二、设置路由步骤
1.应用配置都在 app/config 下,路由配置文件 app/config/routing.yml:
2.从注释中看出,路由定义有多种方式,比如YAML、XML、PHP文件等,这里采用的是annotation即注解的形式,直接在控制器中的action即动作函数上加注解@Route(),这样也好,省得单独维护一个路由文件,不过单独文件也有好处,所有路由列表清楚可见。
注意到app路由有前缀 prefix: /en,这个试了是不能省略的。
下一篇:帝国CMS报错Table ‘empirecms.phome_ecms_’ doesn’t exist怎么解决(帝国cms8.0)
友情链接: 武汉网站建设