排版

排版库包含了一些帮助你以语义化方式格式化文本的方法。

加载库

和 CodeIgniter 中的其他服务一样,可以通过 Config\Services 来加载,不过通常你不需要手动加载:

<?php

$typography = \Config\Services::typography();

可用的静态方法

以下方法可用:

autoTypography($str[, $reduce_linebreaks = false])
参数:
  • $str (string) – 输入字符串

  • $reduce_linebreaks (bool) – 是否把多个连续的空行减少到两个

返回:

HTML 格式的适合排版的字符串

返回类型:

string

格式化文本,使其在语义和排版上是正确的 HTML。

使用示例:

<?php

$string = $typography->autoTypography($string);

备注

排版格式化可能需要大量处理,特别是你有很多需要格式化的内容。如果你选择使用这个方法,你可能需要考虑 caching 你的页面。

formatCharacters($str)
参数:
  • $str (string) – 输入字符串

返回:

格式化后的字符串

返回类型:

string

这个方法主要将双引号和单引号转换为花括号实体,也会转换破折号、双空格和和号。

使用示例:

<?php

$string = $typography->formatCharacters($string);
nl2brExceptPre($str)
参数:
  • $str (string) – 输入字符串

返回:

包含 HTML 格式换行的字符串

返回类型:

string

<pre> 标签外把换行转换为 <br /> 标签。这个方法和原生 PHP 的 nl2br() 函数相同,只是忽略了 <pre> 标签。

使用示例:

<?php

$string = $typography->nl2brExceptPre($string);