Хелпер Typography
Хелпер Typography содержит функции, помогающие форматировать текст для приведения его к семантически корректному виду.
Загрузка хелпера
Для загрузки хелпера используется следующий код:
$this->load->helper('typography');
Доступны следующие функции:
auto_typography()
Форматирует текст таким образом, чтобы на выходе получился корректный с точки зрения семантики и типографики HTML. Принимает строку в качестве параметра и возвращает её со следующими изменениями:
- Окружает параграфы тэгами <p></p> (за параграф считается двойной перевод строки).
- Одиночные переводы строки преобразуются в <br />, если они не находятся внутри тэгов <pre>.
- Блочные элементы, такие как <div>, не обрамляются параграфами. Текст внутри блочных элементов обрамляется, если содержит переносы строк.
- Кавычки вне тэгов преобразуются в корректные для английского текста кавычки–лапки.
- Апострофы преобразуются в апострофы–лапки.
- Двойной минус (вроде -- этого или вот--этого) преобразуются в —тире.
- Три точки подряд предшествующие или следующие за словом преобразуются в троеточие…
- Двойные пробелы, следующие после существительного преобразуется в неразрывные пробелы для того, чтобы отображался именно двойной пробел.
Пример использования:
$string = auto_typography($string);
Примечание: Типографское форматирование может загружать процессор, особенно при форматировании большого объёма текста. Если вы хотите использовать данную функцию, возможно вам будет полезно использовать кэширование страниц.
nl2br_except_pre()
Преобразует переводы строк вне тэгов <pre> в тэги <br />. Данная функция идентична встроенной в PHP nl2br() за исключением того, что она игнорирует пробелы в тэгах <pre>.
Пример использования:
$string = nl2br_except_pre($string);