©
本文档使用
php.cn手册 发布
印刷术类提供了帮助您设置文本格式的方法。
使用印刷类
初始化类
类参考
像CodeIgniter中的大多数其他类一样,Typography类在您的控制器中使用以下$this->load->library()
方法进行初始化:
$this->load->library('typography');
加载后,Typography库对象将可用:
$this->typography
class CI_Typography$protect_braced_quotes = FALSE
将Typography库与Template Parser库结合使用时,通常可能需要在大括号内保护单引号和双引号。要启用此功能,请将protect_braced_quotes
类属性设置为TRUE。
用法示例:
$this->load->library('typography');$this->typography->protect_braced_quotes = TRUE;
auto_typography($str[, $reduce_linebreaks = FALSE])
参数: | $ str(string) - 输入字符串$ reduce_linebreaks(bool) - 是否减少后续换行符 |
---|---|
返回: | HTML排版安全的字符串 |
返回类型: | 串 |
$ str(string) - 输入字符串
$ reduce_linebreaks(bool) - 是否减少后续的换行符
返回:HTML排版安全的字符串
Return type: string
Formats text so that it is semantically and typographically correct HTML. Takes a string as input and returns it with the following formatting:
环绕<p> </ p>中的段落(寻找双行换行来标识段落)。
除了那些出现在<pre>标签中的单行换行,单行换行转换为<br />。
块级元素(如<div>标记)不包含在段落内,但其包含的文本如果包含段落。
报价转换为正确面对的卷烟报价实体,除了那些出现在标签内的报价实体。
撇号转换为卷曲撇号实体。
双破折号(或者像这个或者像这样)被转换成em-dashes。
在一个单词之前或之后的三个连续时间段被转换为省略号(...)。
句子之后的双空格转换为非空格来模仿双空格。
用法示例:
$string = $this->typography->auto_typography($string);
有一个可选参数,用于确定解析器是否应将连续两次以上的换行符减少到两个。传递布尔值TRUE以启用缩减换行符:
$string = $this->typography->auto_typography($string, TRUE);
注意
印刷格式化可能是处理器密集型的,特别是如果您有很多内容被格式化。如果您选择使用此方法,则可能需要考虑缓存页面。
format_characters($str)
参数: | $ str(string) - 输入字符串 |
---|---|
返回: | 格式化的字符串 |
返回类型: | 串 |
$ str(string) - 输入字符串
返回:格式化的字符串
Return type: string
This method is similar to `auto_typography()` above, except that it only does character conversion:
报价转换为正确面对的卷烟报价实体,除了那些出现在标签内的报价实体。
撇号转换为卷曲撇号实体。
双破折号(或者像这个或者像这样)被转换成em-dashes。
在一个单词之前或之后的三个连续时间段被转换为省略号(...)。
句子之后的双空格转换为非空格来模仿双空格。
用法示例:
$string = $this->typography->format_characters($string);
nl2br_except_pre($str)
参数: | $ str(string) - 输入字符串 |
---|---|
返回: | 格式化的字符串 |
返回类型: | 串 |
$ str(string) - 输入字符串
Returns: Formatted string
Return type: string
Converts newlines to <br /> tags unless they appear within <pre> tags. This method is identical to the native PHP `nl2br()` function, except that it ignores <pre> tags.
用法示例:
$string = $this->typography->nl2br_except_pre($string);