Skip to end of metadata
Go to start of metadata

Zend Framework: Zend_Filter_StringTruncate Component Proposal

Proposed Component Name Zend_Filter_StringTruncate
Developer Notes http://framework.zend.com/wiki/display/ZFDEV/Zend_Filter_StringTruncate
Proposers Thomas Weidner
Zend Liaison TBD
Revision 1.0 - 8 August 2009: Initial Draft. (wiki revision: 7)

Table of Contents

1. Overview

Zend_Filter_StringTruncate is a filter which truncates strings, regardless of their content.

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

  • This component will truncate strings at a given length
  • This component will also handle multibyte strings

4. Dependencies on Other Framework Components

  • Zend_Filter_Interface
  • Zend_View_Helper_Abstract

5. Theory of Operation

This filter truncates strings to a given length. It's the reverse filter for the StringPad Filter.
For simplicity this filter also adds a view helper which makes use of this filter.

6. Milestones / Tasks

  • Milestone 1: [DONE] Proposal finished
  • Milestone 2: Proposal accepted
  • Milestone 3: Working implementation
  • Milestone 4: Unit tests
  • Milestone 5: Documentation
  • Milestone 6: Moved to core

7. Class Index

  • Zend_Filter_StringTruncate
  • Zend_View_Helper_StringTruncate

8. Use Cases

UC-01

Truncate a string at 6 chars

UC-02

Truncate a string at 6 chars, using ending chars

UC-03

Truncate a string at 6 chars, using ending chars and additionally get the truncated content

UC-04

Truncate a string at 6 chars but from the other side

9. Class Skeletons

Labels:
None
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Mar 13, 2010

    I like the proposal. But an option to truncate the string in the middle would be nice too.

  2. Jul 11, 2010

    Might a better name for this component be Zend_Filter_Truncate?

    1. Jul 12, 2010

      No, because it does not truncate numbers or files or arrays. It works only on strings.

      It might be better to have a own "Zend_Filter_String_" subtree, but as long as all other string filters are located directly under Zend_Filter I see no reason to add a new subtree for a single filter.

      This is something which could be rethought for 2.0.

  3. Jul 28, 2010

    Thomas; would this component also be able to only truncate a string on a space/line-ending/etc with an optional grace-length?

    1. Jul 30, 2010

      No it will not.
      I was said to detach this functionallity into a own proposal which you can find here: http://framework.zend.com/wiki/display/ZFPROP/Zend_Filter_WordTruncate+-+Thomas+Weidner

  4. Aug 03, 2010

    Community Review Team Recommendation

    The CR Team advises that this proposal be approved, and suggests the functionality of the WordTruncate is implemented in the StringTruncate component as well.

    1. Aug 03, 2010

      Note that I was explicitly said to detach this functionallity into two filters. It was the decision of my liaison

      1. Aug 12, 2010

        The CR Team makes a good argument for incorporating the WordTruncate functionality in this filter, and my team agrees with them. Please incorporate a "words" option, which, if specified, will supersede any provided "length" option, and specify the number of words to retain in the filtered string.