文档章节

zf2.2配置路由规则示例

雪之丞
 雪之丞
发布于 2013/09/13 16:09
字数 384
阅读 825
收藏 1

1 配置路由规则的文件位置:

module/moduleName/config/module.confg.php

2 zf2.2的路由类型:

8种,分别为Hostname, Literal, Method, Part, Regex, Scheme, Segement, Query

示例一 : 一个名为'album'、类型为'segment',它允许我们在URL pattern中指定占位符

注:

(1) []表示其中的内容是可选的

(2) :action表示这是一个变量,后面讲可以对其定义,如: 'action' => '[a-zA-Z0-9_-]*'

(3)下面几种示例是该路由规则可以通过的

1>http://localhost/zend/album

2>http://localhost/zend/album/add

3>http://localhost/zend/album/edit/1

'router' => array(

    'routes' => array(

        'album' => array(

            'type' => 'segment',
            'options' => array(
                'route' => '/album[/:action][/:id]',
                'constraints' => array(
                     'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
                      'id' => '[0-9]+'
                 ),
                'defaults' => array(
                    'controller' => 'Album\Controller\Album',
                    'action' => 'index',
                ),
            ),
        ),       
    ),
),

示例二: 类型为Literal的简单路由配置信息,未设置路由名称

'router' => array(
    'routes' => array(
        'type' => 'Literal',
        'options' => array(
            'route' => '/hello/world',
            'defaults' => array(
                'controller' => 'Test\Controller\Hello',
                'action' => 'world',
            ),
        ),
    ),
),     

**示例三:**两个Literal类型的路由

'router' => array(
    'routes' => array(
        //Literal route namede 'home'
        'home' => array(
            'type' => 'Literal',
            'options' => array(
                'route' => '/',
                'defaults' => array(
                    'controller' => 'Application\Controller\Index',
                    'action' => 'index',
                ),
            ),
        ),

        //Literal route named 'contact'
        'contact' => array(
            'route' => '/contact',
            'options' => array(
                'controller' => 'Application\Controller\Contact',
                 'action' => 'form',
            ),
        ),
    ),
),

示例四: 子路由 child_routes

注: 名为home的路由指定的是整个工程的首页

' router' => array(
   ' routes' => array(

        //Literal route named 'home'
        'home' => array(
            'type' => 'Literal',
            'options' => array(
                'route' => '/',
                'defaults' => array(
                    'controller' => 'Application\Controller\Index',
                    'action' => 'index',
                ),
            ),
        ),

        //Literal route named 'blog', with child routes
        'blog' =>array(
            'type' => 'Literal',
            'options' => array(
                'route' => '/blog',
                'defaults' => array(
                    'controller' => 'Application\Controller\Blog';
                    'action' => 'index',
                ),
            ),
            'may_terminate' => true,
            'child_routes' => array(
                //segment route for viewing one blog post
                'post' => array(
                    'type' => 'segment',
                    'options' => array(
                        'route' => '/[:slug]',
                        'constraints' => array(
                             'slug' => '[a-zA-Z0-9_-]+',
                        ),
                        'defaults' => array(
                            'action' => 'view',
                        ),
                    ),
                ),

                //Literal doute for viewing RSS feed
                'rss' => array(
                    'type' => 'Literal',
                    'options' => array(
                        'route' => '/rss',
                        'defaults' => array(
                            'action' => 'rss'
                        ),
                    ),
                ),
            ),
        ),
    ),
),

© 著作权归作者所有

共有 人打赏支持
雪之丞
粉丝 13
博文 219
码字总数 51065
作品 0
浦东
程序员
私信 提问
加载中

评论(2)

雪之丞
雪之丞

引用来自“邓攀”的评论

zf2比zf1好么?一直用zf1做了好几个项目

刚开始学zf2,没用过zf1。
哈哈__哈哈
哈哈__哈哈
zf2比zf1好么?一直用zf1做了好几个项目
istio-0.8 规则配置 官方案例

Istio提供了一个简单的配置模型来控制API调用和第4层流量如何跨应用程序部署中的各种服务流动。配置模型允许操作员配置服务级属性,例如断路器,超时,重试,以及设置常见的连续部署任务,例...

xiaomin0322
2018/07/19
0
0
通过阿里云容器服务K8S Ingress Controller实现应用服务的灰度发布

简介 日常工作中我们经常需要对服务进行版本更新升级,为此我们经常使用到的发布方式有滚动升级、分批暂停发布、蓝绿发布以及灰度发布,今天主要跟大家分享下在阿里云容器服务Kubernetes集群...

chenqz
2018/05/18
0
0
传统网络配置命令与IP高级路由命令

懂得网络配置命令是一般技术人员必备的技术,经过一段时间的研究和学习,总结了一些常用的命令和示例以便日后查阅. 传统的在1--3点,ip高级路由命令在4--12点,两者部分可以通用,并达到同样的目的...

一见蓝天
2012/07/24
0
0
阿里云Kubernetes Service Mesh实践进行时(3): 智能路由

概述 上一篇文章通过一个官方示例演示了如何部署应用到上述Istio环境中,本文使用此示例来尝试 Istio 的流量路由、故障注入、流量转移等功能。 阿里云Kubernetes Service Mesh实践进行时(1)...

osswangxining
2018/06/06
0
0
istio使用教程和示例(导流,请求路由,访问拒绝,黑白名单,限速)

版权声明:本文为博主原创文章,转载请注明来源。开发合作联系luanpenguestc@sina.com https://blog.csdn.net/luanpeng825485697/article/details/84570723 Istio 对 Pod 和服务的要求 要成为...

数据架构师
2018/11/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周日乱弹 —— 没时间 没头发 但有钱

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @开源中国总经办主任 :分享齐一的单曲《这个年纪》 《这个年纪》- 齐一 手机党少年们想听歌,请使劲儿戳(这里) @肿肿卷 :我真的可以睡一天...

小小编辑
45分钟前
11
4
Django进阶 1.1 ORM基础—ORM 1.2.1 增删改查之查询 1.2.2 删改增 (1) 1.2.3 删改增 (2)

ORM基础 ORM是Django操作数据库的API,Django的作者将sql语句封装在里面供我们使用。 我们前面还提到过Django提供一个模拟数据库的工具,sqlite,供我们学习测试使用。 如果我们想使用mysql...

隐匿的蚂蚁
今天
3
0
Windows 上安装 Scala

在安装 Scala 之前需要先安装 Java 环境,具体安装的详细方法就不在这里描述了。 您可以自行搜索我们网站中的内容获得其他网站的帮助来获得如何安装 Java 环境的方法。 接下来,我们可以从 ...

honeymose
今天
3
0
数据库篇多表操作

第1章 多表操作 实际开发中,一个项目通常需要很多张表才能完成。例如:一个商城项目就需要分类表(category)、商品表(products)、订单表(orders)等多张表。且这些表的数据之间存在一定的关系...

stars永恒
今天
3
0
nginx日志自动切割

1.日志配置(Nginx 日志) access.log----记录哪些用户,哪些页面以及用户浏览器,IP等访问信息;error.log------记录服务器错误的日志 #配置日志存储路径:location / {      a...

em_aaron
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部