CodeIgniter User Guide Version 1.7

Typography Class

The Typography Class provides functions that help you format text.

Initializing the Class

Like most other classes in CodeIgniter, the Typography class is initialized in your controller using the $this->load->library function:


Once loaded, the Typography library object will be available using: $this->typography


Formats text so that it is semantically and typographically correct HTML. Takes a string as input and returns it with the following formatting:

Usage example:

$string = $this->typography->auto_typography($string);


There are two optional parameters:

  1. Strip JavaScript Event Handlers. Determines whether the parser should strip all JavaScript event handlers for security. Use bolean TRUE or FALSE.
  2. Reduce Linebreaks. Determines whether the parser should reduce more then two consecutive linebreaks down to two. Use bolean TRUE or FALSE.

By default the parser strips JS Event handlers and does not reduce line breaks. In other words, if no parameters are submitted, it is the same as doing this:

$string = $this->typography->auto_typography($string, TRUE, FALSE);

Note: Typographic formatting can be processor intensive, particularly if you have a lot of content being formatted. If you choose to use this function you may want to consider caching your pages.


This function is similiar to the auto_typography function above, except that it only does character conversion:

Usage example:

$string = $this->typography->convert_characters($string);


Converts newlines to <br /> tags unless they appear within <pre> tags. This function is identical to the native PHP nl2br() function, except that it ignores <pre> tags.

Usage example:

$string = $this->typography->nl2br_except_pre($string);


When using the Typography library in conjunction with the Template Parser library it can often be desirable to protect single and double quotes within curly braces. To enable this, set the protect_braced_quotes class property to TRUE.

Usage example:

$this->typography->protect_braced_quotes = TRUE;