文本辅助函数
文本辅助函数所包含的函数只能对文本进行处理。
装载文本辅助函数
采用如下方式装载该辅助函数:
$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