Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[

Zend Framework: Zend_Filter_Minify_Html Component Proposal

Proposed Component Name Zend_Filter_Minify_Html
Developer Notes
Proposers Nick Daugherty
Zend Liaison TBD
Revision 1.0 - 23 April 2010: Initial Draft. (wiki revision: 10)

Table of Contents

1. Overview

Zend_Filter_Minify_Html is a filter to reduce the size of Html strings and files, resulting in faster client downloads

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

  • This component will minify Html code.
  • This component will accept both filenames and strings as input to the filter() method.
  • This component will support writing the minified Html to a file.
  • This component will use Zend_Filter_Minify_Css and Zend_Filter_Minify_Javascript for <style> and <script> tags
  • This component will implement Zend_Filter_Interface
  • This component will not generate invalid Html
  • This component will provide options for control of minification (such as opting not to remove comments, for example)

4. Dependencies on Other Framework Components

  • Zend_Filter
  • Zend_Filter_Exception
  • Zend_Filter_Minify_Css
  • Zend_Filter_Minify_Javascript

5. Theory of Operation

Minifying html leads to faster load times on the client by reducing the overall size of html code. This component aims to perform the work of removing comments, extra whitespace, etc while retaining the familiar Zend_Filter interface.

Zend_Filter_Minify_Html will use the ZF Css and Javascript minifier components to handle any internal <script> and <style> tags encountered when performing minification. This will ensure that all Javascript and Css is kept valid and the resulting html is as minified as possible.

The component can be used by other ZF components, such as Zend_View itself, to (optionally) automatically minify html (and js/css) when rendering output.

The component is used like any other Zend_Filter_* component, passing the string (or filename) to be minified to the filter() method.

6. Milestones / Tasks

  • Milestone 1: design notes will be published here
  • Milestone 2: Working prototype checked into the incubator supporting minification of Html strings
  • Milestone 3: Working prototype checked into the incubator supporting minification of Html files (and optionally writing output to a file)
  • Milestone 4: Unit tests exist, work, and are checked into SVN.
  • Milestone 5: Initial documentation exists.

7. Class Index

  • Zend_Filter_Minify_Exception
  • Zend_Filter_Minify_Html

8. Use Cases


This filter could be implemented in a late running plugin or as on option for Zend_View and layouts to automatically minify Html before sending it to the client.

9. Class Skeletons


Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.