Typography
The Typography library contains methods that help you format text in semantically relevant ways.
Loading the Library
Like all services in CodeIgniter, it can be loaded via Config\Services
, though you usually will not need to load it manually:
$typography = \Config\Services::typography();
Available static functions
The following functions are available:
autoTypography()
-
autoTypography($str[, $reduce_linebreaks = FALSE])
-
Parameters: - $str (string) – Input string
- $reduce_linebreaks (bool) – Whether to reduce multiple instances of double newlines to two
Returns: HTML-formatted typography-safe string
Return type: string
Formats text so that it is semantically and typographically correct HTML.
Usage example:
$string = $typography->autoTypography($string);
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.
formatCharacters()
-
formatCharacters($str)
-
Parameters: - $str (string) – Input string
Returns: String with formatted characters.
Return type: string
This function mainly converts double and single quotes to curly entities, but it also converts em-dashes, double spaces, and ampersands.
Usage example:
$string = $typography->formatCharacters($string);
nl2brExceptPre()
-
nl2brExceptPre($str)
-
Parameters: - $str (string) – Input string
Returns: String with HTML-formatted line breaks
Return type: 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 = $typography->nl2brExceptPre($string);