thinkphp5中截取字符串的方法有哪些?(两种方法实现)

thinkphp5中截取字符串的方法有哪些?(两种方法实现)

内容导读

收集整理的这篇技术教程文章主要介绍了thinkphp5中截取字符串的方法有哪些?(两种方法实现),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1815字,纯文字阅读大概需要3分钟

内容图文

本篇文章给大家带来的内容是关于thinkphp5中截取字符串的两种方法介绍(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

在公共的common.php中

方法1

//字符串截取function cut_str($sourcestr,$cutlength)
{

 $returnstr='';

 $i=0;

 $n=0;

 $str_length=strlen($sourcestr);//字符串的字节数

 while (($n<$cutlength) and ($i<=$str_length))

 {



$temp_str=substr($sourcestr,$i,1);



$ascnum=Ord($temp_str);//得到字符串中第$i位字符的ascii码



if ($ascnum>=224)

//如果ASCII位高与224,



{


$returnstr=$returnstr.substr($sourcestr,$i,3); //根据UTF-8编码规范,将3个连续的字符计为单个字符








 $i=$i+3;





//实际Byte计为3




 $n++;





//字串长度计1



}



elseif ($ascnum>=192) //如果ASCII位高与192,



{




 $returnstr=$returnstr.substr($sourcestr,$i,2); //根据UTF-8编码规范,将2个连续的字符计为单个字符




 $i=$i+2;





//实际Byte计为2




 $n++;





//字串长度计1



}



elseif ($ascnum>=65 && $ascnum<=90) //如果是大写字母,



{




 $returnstr=$returnstr.substr($sourcestr,$i,1);




 $i=$i+1;





//实际的Byte数仍计1个




 $n++;





//但考虑整体美观,大写字母计成一个高位字符



}



else







//其他情况下,包括小写字母和半角标点符号,



{




 $returnstr=$returnstr.substr($sourcestr,$i,1);




 $i=$i+1;





//实际的Byte数计1个




 $n=$n+0.5;



//小写字母和半角标点等与半个高位字符宽...



}

 }




 if ($str_length>$i){





$returnstr = $returnstr . "...";//超过长度时在尾处加上省略号



}


return $returnstr;
}

方法2:

//字符串截取并且超出显示省略号function subtext($text, $length){if(mb_strlen($text, ‘utf8’) > $length)return mb_substr($text,0,$length,’utf8′).’ …’;return $text;}

在模版中调用则:

{$tops.title | subtext=18}

相关推荐:

MySQL 字符串截取

php截取字符串函数分享,php截取字符串

以上就是thinkphp5中截取字符串的方法有哪些?(两种方法实现)的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的thinkphp5中截取字符串的方法有哪些?(两种方法实现)全部内容,希望文章能够帮你解决thinkphp5中截取字符串的方法有哪些?(两种方法实现)所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com