php替换字符串中间字符为省略号的方法
2015-05-04 00:00
645 查看
本文实例讲述了php替换字符串中间字符为省略号的方法。分享给大家供大家参考。具体分析如下:
对于一个长字符串,如果你只希望用户看到头尾的部分内容,隐藏掉中间内容,你可以使用这个php函数,他可以指定要隐藏掉的中间字符串的数量
演示范例:
希望本文所述对大家的php程序设计有所帮助。
对于一个长字符串,如果你只希望用户看到头尾的部分内容,隐藏掉中间内容,你可以使用这个php函数,他可以指定要隐藏掉的中间字符串的数量
/** * Reduce a string by the middle, keeps whole words together * * @param string $string * @param int $max (default 50) * @param string $replacement (default [...]) * @return string * @author david at ethinkn dot com * @author loic at xhtml dot ne * @author arne dot hartherz at gmx dot net */ function strMiddleReduceWordSensitive($string,$max=50,$rep='[...]'){ $strlen = strlen($string); if ($strlen <= $max) return $string; $lengthtokeep = $max - strlen($rep); $start = 0; $end = 0; if (($lengthtokeep % 2) == 0) { $start = $lengthtokeep / 2; $end = $start; } else { $start = intval($lengthtokeep / 2); $end = $start + 1; } $i = $start; $tmp_string = $string; while ($i < $strlen) { if (isset($tmp_string[$i]) and $tmp_string[$i] == ' ') { $tmp_string = substr($tmp_string, 0, $i) . $rep; $return = $tmp_string; } $i++; } $i = $end; $tmp_string = strrev ($string); while ($i < $strlen) { if (isset($tmp_string[$i]) and $tmp_string[$i] == ' ') { $tmp_string = substr($tmp_string, 0, $i); $return .= strrev ($tmp_string); } $i++; } return $return; return substr($string, 0, $start).$rep.substr($string, - $end); }
演示范例:
// example: $text = 'This is a very long test sentence, bla foo bar nothing'; print strMiddleReduceWordSensitive ($text, 30) . "\n"; // Returns: This is a very[...]foo bar nothing (~ 30 chrs) print strMiddleReduceWordSensitive ($text, 30, '...') . "\n"; // Returns: This is a very...foo bar nothing (~ 30 chrs)
希望本文所述对大家的php程序设计有所帮助。
相关文章推荐
- php替换字符串中间字符为省略号的方法
- php 自定字符串中的部分字符进行替换方法
- PHP获取一个字符串中间一部分字符的方法
- PHP获取一个字符串中间一部分字符的方法
- PHP:只替换字符串中第一次出现的字符
- PHP字符串word末字符实现大小写互换的方法
- php使用substr()和strpos()联合查找字符串中某一特定字符的方法
- php 字符串替换的方法
- php正则替换变量指定字符的方法
- PHP去除字符串最后一个字符的三种方法实例
- js replace(a,b)之替换字符串中所有指定字符的方法
- Perl中删除或替换字符串中特殊字符(如空格)的方法
- PHP只显示姓名首尾字符,隐藏中间字符并用*替换
- js replace(a,b)之替换字符串中所有指定字符的方法
- 替换字符串中间的某些字符
- php中3种方法删除字符串中间的空格
- 请编写一个方法,将字符串中的空格全部替换为“ ”。假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实长度(小于等于1000),同时保证字符串由大小写的英文字母组成。
- PHP中strncmp()函数比较两个字符串前2个字符是否相等的方法