文本辅助函数

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

装载文本辅助函数

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

  1. $this->load->helper('text');
可用函数如下: ## word_limiter() 根据指定的**词语**(由于是英语,对中文应该是以空格为判断标准,译者注)数目对一段字符串进行截取。范例:
  1. $string = "Here is a nice text string consisting of eleven words.";
  2. $string = word_limiter($string, 4);
  3. // Returns: Here is a nice…
第三个参数是一个可选的符号后缀,默认在截取段后加上省略号(…)。 ## character_limiter() 根据指定的**字符**数目对一段字符串进行截取。它将会保证单词的完整性(对英语单词而言,译者注),因此可能会造成截取后的字符数目与指定的有一点出入。范例:
  1. $string = "Here is a nice text string consisting of eleven words.";
  2. $string = character_limiter($string, 20);
  3. // Returns: Here is a nice text string…
第三个参数是一个可选的符号后缀,默认在截取段后加上省略号(…)。 ## ascii_to_entities() 将ASCII码转换为字符实体,包括那些在网页中使用时可能导致问题的高位ASCII码和微软Word字符,因此它们能够被正确地显示出来,不受浏览器设置或者数据库可靠存储的影响。本函数部分依赖于你的服务器对字符集的支持,因此并不是在任何情况下都100%的可靠,但在大多数情况下都可以正确地识别正常范围以外的字符(比如重音符号)。例如:
  1. $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.

  1. $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() 让你可以对文本中的文字进行审核替换。第一个形参用于获取原始字符串。第二个形参用于存放你不允许的文字的数组。第三个形参(可选)用于存放一个替换不允许文字的字段。如果不指定则被替换为“磅”的表示符号:####。范例:
  1. $disallowed = array('darn', 'shucks', 'golly', 'phooey');
  2. $string = word_censor($string, $disallowed, 'Beep!');

highlight_code()

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

  1. $string = highlight_code($string);
本函数使用PHP的 highlight_string() 函数,因此所使用的颜色是你在 php.ini 文件中指定的那些。 ## highlight_phrase() 对字符串内的一个短语进行突出显示。第一个参数是原始字符串,第二个参数是你想要突出显示的短语。如果要用HTML标签对短语进行标记,那么第三个和第四个参数分别是你想要对短语使用的HTML打开和关闭标签。例如:
  1. $string = "Here is a nice text string about nothing in particular.";
  2. $string = highlight_phrase($string, "nice text", '<span style="color:#990000">', '</span>');
以上内容将返回: Here is a nice text string about nothing in particular. ## word_wrap() 根据指定的**字符**数目对文本进行换行操作,并且保持词语的完整性(对英语单词而言,笔者注)。范例:
  1. $string = "Here is a simple string of text that will help us demonstrate this function.";
  2. echo word_wrap($string, 25);
  3. // Would produce:
  4. Here is a simple string
  5. of text that will help
  6. us demonstrate this
  7. function

ellipsize()

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

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

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

  1. $str = 'this_string_is_entirely_too_long_and_might_break_my_design.jpg';
  2. echo ellipsize($str, 32, .5);
输出:
  1. this_string_is_eak_my_design.jpg

翻译贡献者:Hex, hk_yuhe, kkorange, kntism, yinzhili