文档章节

Zend Framework 2 中,定制error 的layout

chinaweilu
 chinaweilu
发布于 2013/12/24 10:15
字数 321
阅读 49
收藏 0
点赞 0
评论 0

404页面在我们平常浏览网页的时候并不会经常碰到,也因此很容易被忽略,在Zend Framework 2中,项目的结构已经默认提供了404 页面,包括样式等等。但是有时,我们需要定制符合自己网站的404 页面样式时,该怎么办呢?

其实非常简单,编辑错误页面的layout ,例如errorlayout

module.config.php

'view_manager' => array (
        'display_not_found_reason' => true,
        'display_exceptions' => true,
        'doctype' => 'HTML5',
        'not_found_template' => 'error/404',
        'exception_template' => 'error/index',
        'template_path_stack' => array (
            __DIR__ . '/../view' 
        ),
        'template_map' => array (
            'error/404' => __DIR__ . '/../view/error/404.phtml',
            'error/index' => __DIR__ . '/../view/error/index.phtml',
            'error/layout'=> __DIR__ . '/../view/layout/error_layout.phtml' 
        ) 
    ),

module.php

class Module
{
    public function onBootstrap(MvcEvent $e)
    {
        $e->getApplication()->getServiceManager()->get('translator');
        $eventManager        = $e->getApplication()->getEventManager();
        $moduleRouteListener = new ModuleRouteListener();
        $moduleRouteListener->attach($eventManager);
        $eventManager->attach(MvcEvent::EVENT_DISPATCH_ERROR,array($this,'onDispatchError'),100);
    }
    function onDispatchError(MvcEvent $e) {
        
        $vm = $e->getViewModel();
        $vm->setTemplate('error/layout');
        
    }
}

这个方式,解决由于路由问题导致的错误。

如果在controller > action 中进入错误页面,则非常简单,调用下面的方法:

$this->notFoundAction();


© 著作权归作者所有

共有 人打赏支持
chinaweilu
粉丝 1
博文 5
码字总数 2035
作品 0
朝阳
程序员
Zend Framework 2 中,定制error 的layout

404页面在我们平常浏览网页的时候并不会经常碰到,也因此很容易被忽略,在Zend Framework 2中,项目的结构已经默认提供了404 页面,包括样式等等。但是有时,我们需要定制符合自己网站的404...

phpy ⋅ 2013/05/25 ⋅ 0

zendframework 禁用view和layout

在zend framework中使用layout布局之后,有些action中不需要view或者layout所有可以用下面方法禁用view和layout: $this->helper->viewRenderer->setNoRender(); $this->helper->layout->dis......

岭南六少 ⋅ 2011/06/13 ⋅ 0

几款主流PHP框架的优缺点评比

PHP语言还是比较常用到的一门计算机高级语言。我们将会在这篇文章中向大家主要介绍关于PHP框架相关优缺点评比,作为一个参考分享给朋友们。 主要参考的PHP框架包括:CodeIgniter、CakePHP、Z...

绿悠悠 ⋅ 2010/06/08 ⋅ 20

ZF2入门:Windows环境下从零开始Zend Framework 2.0 (ZF2)环境搭建

Zend Framework 2.0 (ZF2)正式发布之后不少朋友都进行了尝试,可能由于ZF2涉及到的新特性比较多,有朋友希望能有一篇从零开始Zend Framework 2.0 (ZF2)的教程,于是就有了本篇日志。 以下将记...

AlloVince ⋅ 2012/10/22 ⋅ 0

基于 PHP 的开源内容管理系统--TomatoCMS

TomatoCMS 是一个基于 Zend Framework, jQuery 和 960 grid system 等技术开发的开源 CMS 系统。 TomatoCMS 认为每个站点是由许多不同的元素组成,叫做小部件。通过 TomatoCMS 提供的一个叫 ...

匿名 ⋅ 2010/01/14 ⋅ 1

ZF2 Layout问题

@Jacky.Wang 你好,想跟你请教个问题: 在Zend Framework 2中,Layout文件使用echo $this->left;输出左边内容,而这个左边内容由navigationAction控制, 问:怎么在其他使用这个布局的Actio...

杨家二少 ⋅ 2013/12/27 ⋅ 1

Zend Studio 7.2.1 发布-下载

Zend Studio 是专业开发人员在使用PHP整个开发周期中唯一的集成开发环境 (IDE),它包括了PHP所有必须的开发部件。通过一整套编辑、调试、分析、优化和数据库工具,Zend Studio 加速开发周期,...

红薯 ⋅ 2010/07/13 ⋅ 0

【PHP-ZF】基础知识学习笔记(一)

zendframework官网 class 1 初步认识php zendframework 框架、配置开发环境、创建zf项目 1.php常用框架:zendframework,thinkphp(国人开发),yii(外企用的较多),cakephp 2.mvc框架:m...

小小M ⋅ 2012/11/07 ⋅ 0

Zend Framework2 入门教程

由于篇幅过长使用过QQ空间的自动清理功能,不知道是否被删减有内容。 zend framework2 入门教程源码 http://pan.baidu.com/s/1kTuRGn9 目录 序言 5 第 1章 Zend Framework2 简介 6 1.1 Zend...

lai1362000 ⋅ 2014/02/19 ⋅ 8

Zend Framework 2.0的Mvc结构及启动流程分析

原文链接: Zend Framework 2.0的Mvc结构及启动流程分析。 概要 首先需要明确的是,Zend2.0的启动以及MVC构架是完全基于事件驱动的。如果对事件驱动还不太了解的话,应该先弄清楚什么是ZF2的...

AlloVince ⋅ 2012/06/06 ⋅ 1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

RabbitMQ学习以及与Spring的集成(三)

本文介绍RabbitMQ与Spring的简单集成以及消息的发送和接收。 在RabbitMQ的Spring配置文件中,首先需要增加命名空间。 xmlns:rabbit="http://www.springframework.org/schema/rabbit" 其次是模...

onedotdot ⋅ 25分钟前 ⋅ 0

JAVA实现仿微信红包分配规则

最近过年发红包拜年成为一种新的潮流,作为程序猿对算法的好奇远远要大于对红包的好奇,这里介绍一种自己想到的一种随机红包分配策略,还请大家多多指教。 算法介绍 一、红包金额限制 对于微...

小致dad ⋅ 37分钟前 ⋅ 0

Python 数电表格格式化 xlutils xlwt xlrd的使用

需要安装 xlutils xlwt xlrd 格式化前 格式化后 代码 先copy读取的表格,然后按照一定的规则修改,将昵称中的学号提取出来替换昵称即可 from xlrd import open_workbookfrom xlutils.copy ...

阿豪boy ⋅ 今天 ⋅ 0

面试题:使用rand5()生成rand7()

前言 读研究生这3 年,思维与本科相比变化挺大的,这几年除了看论文、设计方案,更重要的是学会注重先思考、再实现,感觉更加成熟吧,不再像个小P孩,人年轻时总会心高气傲。有1 道面试题:给...

初雪之音 ⋅ 今天 ⋅ 0

Docker Toolbox Looks like something went wrong

Docker Toolbox 重新安装后提示错误:Looks like something went wrong in step ´Checking if machine default exists´ 控制面板-->程序与应用-->启用或关闭windows功能:找到Hyper-V,如果处......

随你疯 ⋅ 今天 ⋅ 0

Guacamole 远程桌面

本文将Apache的guacamole服务的部署和应用,http://guacamole.apache.org/doc/gug/ 该链接下有全部相关知识的英文文档,如果水平ok,可以去这里仔细查看。 一、简介 Apache Guacamole 是无客...

千里明月 ⋅ 今天 ⋅ 0

nagios 安装

Nagios简介:监控网络并排除网络故障的工具:nagios,Ntop,OpenVAS,OCS,OSSIM等开源监控工具。 可以实现对网络上的服务器进行全面的监控,包括服务(apache、mysql、ntp、ftp、disk、qmail和h...

寰宇01 ⋅ 今天 ⋅ 0

AngularDart注意事项

默认情况下创建Dart项目应出现以下列表: 有时会因为不知明的原因导致列表项缺失: 此时可以通过以下步骤解决: 1.创建项目涉及到的包:stagehand 2.执行pub global activate stagehand或pub...

scooplol ⋅ 今天 ⋅ 0

Java Web如何操作Cookie的添加修改和删除

创建Cookie对象 Cookie cookie = new Cookie("id", "1"); 修改Cookie值 cookie.setValue("2"); 设置Cookie有效期和删除Cookie cookie.setMaxAge(24*60*60); // Cookie有效时间 co......

二营长意大利炮 ⋅ 今天 ⋅ 0

【每天一个JQuery特效】淡入淡出显示或隐藏窗口

我是JQuery新手爱好者,有时间就练练代码,防止手生,争取每天一个JQuery练习,在这个博客记录下学习的笔记。 本特效主要采用fadeIn()和fadeOut()方法显示淡入淡出的显示效果显示或隐藏元...

Rhymo-Wu ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部