本文实例讲述了Joomla框架实现字符串截取的方法。分享给大家供大家参考,具体如下:
在用joomla进行开发的时候,需要用到国外的资源,一些module,组件,插件之类的,但是我们会发现,在字符串这个方法都需要进行修改。因为PHP的substr方法只是针对于非中文字符串有效,所以要使用另外一种简便容易的方法mb_substr,这样就能轻松解决截取字符的问题。
同时如果需要针对中文,英文,中英文混合排列三种方式(标点符号除外)进行截取字符串,那么正则表达式就派上用场了,附上源码,仅供参考。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
/*截取字符串方法*/ //$str字符串 //$number为最大长度 function cutStrTitle( $str , $number ){ $str = strip_tags ( $str ); $en =preg_match( '/^[a-zA-Z]/' , $str ); //匹配英文字母 $cn =preg_match_all( "/([\x{4e00}-\x{9fa5}]){1}/u" , $str , $arrc ); //匹配汉字,统计个数,返回给$arrc if (mb_strlen( $str , 'UTF8' )<= $number ){ //'UTF8'跟据字符串的格式调整 return $str ; } else { if ( $en ) { if ( $cn ){ //中英文混合情况下 return mb_substr( $str ,0, $number +2, 'utf-8' ). '...' ; } else { //全为英文情况下 return mb_substr( $str ,0, $number +4, 'utf-8' ). '...' ; } } else { //全为中文情况下 return mb_substr( $str ,0, $number , 'utf-8' ). '...' ; } } } |
希望本文所述对大家PHP框架程序设计有所帮助。