文本辅助函数

优质
小牛编辑
132浏览
2023-12-01

文本辅助函数所包含的函数只能对文本进行处理。

装载文本辅助函数

采用如下方式装载该辅助函数:

$this->load->helper('text');

可用函数如下:

word_limiter()

根据指定的词语(由于是英语,对中文应该是以空格为判断标准,译者注)数目对一段字符串进行截取。范例:

$string = "Here is a nice text string consisting of eleven words.";

$string = word_limiter($string, 4);

// Returns: Here is a nice…

第三个参数是一个可选的符号后缀,默认在截取段后加上省略号(…)。

character_limiter()

根据指定的字符数目对一段字符串进行截取。它将会保证单词的完整性(对英语单词而言,译者注),因此可能会造成截取后的字符数目与指定的有一点出入。范例:

$string = "Here is a nice text string consisting of eleven words.";

$string = character_limiter($string, 20);

// Returns: Here is a nice text string…

第三个参数是一个可选的符号后缀,默认在截取段后加上省略号(…)。

ascii_to_entities()

将ASCII码转换为字符实体,包括那些在网页中使用时可能导致问题的高位ASCII码和微软Word字符,因此它们能够被正确地显示出来,不受浏览器设置或者数据库可靠存储的影响。本函数部分依赖于你的服务器对字符集的支持,因此并不是在任何情况下都100%的可靠,但在大多数情况下都可以正确地识别正常范围以外的字符(比如重音符号)。例如:

$string = ascii_to_entities($string);

entities_to_ascii()

这个函数与ascii_to_entities()功能相反; 它将字符转变为ASC码.

convert_accented_characters()

Transliterates high ASCII characters to low ASCII equivalents, useful when non-English characters need to be used where only standard ASCII characters are safely used, for instance, in URLs.

$string = convert_accented_characters($string);

This function uses a companion config file application/config/foreign_chars.php to define the to and from array for transliteration.

word_censor()

让你可以对文本中的文字进行审核替换。第一个形参用于获取原始字符串。第二个形参用于存放你不允许的文字的数组。第三个形参(可选)用于存放一个替换不允许文字的字段。如果不指定则被替换为“磅”的表示符号:####。范例:

$disallowed = array('darn', 'shucks', 'golly', 'phooey');

$string = word_censor($string, $disallowed, 'Beep!');

highlight_code()

对一段代码(PHP,HTML等)进行着色。例如:

$string = highlight_code($string);

本函数使用PHP的 highlight_string() 函数,因此所使用的颜色是你在 php.ini 文件中指定的那些。

highlight_phrase()

对字符串内的一个短语进行突出显示。第一个参数是原始字符串,第二个参数是你想要突出显示的短语。如果要用HTML标签对短语进行标记,那么第三个和第四个参数分别是你想要对短语使用的HTML打开和关闭标签。例如:

$string = "Here is a nice text string about nothing in particular.";

$string = highlight_phrase($string, "nice text", '<span style="color:#990000">', '</span>');

以上内容将返回:

Here is a nice text string about nothing in particular.

word_wrap()

根据指定的字符数目对文本进行换行操作,并且保持词语的完整性(对英语单词而言,笔者注)。范例:

$string = "Here is a simple string of text that will help us demonstrate this function.";

echo word_wrap($string, 25);

// Would produce:

Here is a simple string
of text that will help
us demonstrate this
function

ellipsize()

过滤字符串中的标签,在指定的最大长度处切割字符串,并插入一个省略号。

第一个参数是要被省略处理的字符串,第二个参数是目标字符串中字符的数目。第三个参数是省略号在目标字符串的位置,值为0 - 1,从左到右。例如,值为1时,省略号位于目标字符串的右端,值为.5时,位于中间,而值为0时位于左端。

第四个参数是可选的,用于指明使用的省略符号类型,默认使用

$str = 'this_string_is_entirely_too_long_and_might_break_my_design.jpg';

echo ellipsize($str, 32, .5);
输出: this_string_is_e…ak_my_design.jpg