PHP字符串截取新方法:不破坏单词的截断技巧
创始人
2024-12-26 12:11:36
0 次浏览
0 评论
php截取字符
结论:在PHP开发中,如果你需要截取字符串而不断字,那么手册中推荐的mb_strimwidth()函数并不能满足你的期望。开发者实现了自己的方法,利用`wordwrap()`函数来分割单词并计算长度,以达到拦截的目的。
下面是一个直观的实现过程。
当我需要在项目中准确截取字符串而不破坏单词时,我尝试了PHP手册中的mb_strimwidth()函数,但失败了。
所以,虽然有一些问题,我还是自定义了功能。
该函数的原理是首先使用wordwrap()函数将字符串分割成单词,然后使用mb_strlen()计算单词长度,直到达到设定的截距长度即可。
让我们用一个例子来看看这个过程:原始字符串:$str='readonlythisbooleanattributesthattheusercannotmodifythevalueofthecontrol.Disabledattribute,readonlyattributedoesnotPreventtheuserfromclickingorelectinginthecontrol.longgeblog'sThevalueofaread-onlycontrolisstillsubscribedwiththeform.'拦截:echowordcut($str,100);该函数的代码主要用于截取英文字符串。
它会被翻译成文,但你可以调整它以兼容:phpfunctionwordcut($stringg,$cutlength=250,$replace='...'){if(mb_strlen($string)<=$cutlength){返回$string;}else{$totalLength=0;$newwords=[];$wrap=wordwrap($string,1,"t");$wraps=explode("t",$wrap);foreach($wrapsas$tmp){$newwords[]=$tmp;$totalLength+=mb_strlen($tmp);if($totalLength>=$cutlength){break;}}$str=trim(implode("",$newwords));returnempty($str)?$str:$str.''.$replace;}}如果单词未超过指定长度,则此函数将保持单词原样;如果超过指定长度,则以省略号结尾。
现在的小问题是`$cutlength`不是实际长度,它忽略空格的长度,并在单词总长度达到这个值时停止。
实际使用中会考虑进一步优化。
php截取字符串
这个问题我已经回答过很多次了:/*截取给定长度的完整汉字*/functioncnsubstr($str,$strlen=10){if(empty($str)||!is_numeric($strlen)){returnfalse;}if(strlen($str)<=$strlen){return$str;}//获取字符$length并判断是否为非中文//直接返回长字符串$length$last_word_needed=substr($str,$strlen-1,1);if(!ord($last_word_needed)>128){$needed_sub_sentence=substr($str,0,$strlen);return$needed_sub_sentence;}else{for($i=0;$i<$strlen;$i++){if(ord($str[$i])>128){$i++;}}//endofffor$needed_sub_sentence=substr($str,0,$i);return$needed_sub_sentence;}}直接调用此函数就是这样。
下一篇:
自学C语言:时间规划与学习路径攻略
相关文章

C语言字符串交换:strcpy()函数实...
2025-01-10 01:43:57
深入解析pow函数:编程中的求幂运算及其...
2024-12-21 06:17:16
C语言中如何进行根号运算及输出
2024-12-30 20:03:23
C语言源程序后缀揭秘:.c、.obj、....
2024-12-30 12:16:17
Excel字符串提取技巧:轻松截取前/后...
2024-12-14 17:10:33
Python学习资源盘点:题库、教程、工...
2024-12-21 16:29:04
JavaScript基础学习指南:数据结...
2024-12-15 06:21:24
Excel公式技巧:轻松截取字符串中的数...
2025-02-26 11:44:39
C语言字符串与字符数组详解及区别对比
2025-02-11 07:27:05
char变量类型详解及C语言数据类型全解...
2024-12-29 04:38:20最新文章
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
热门文章
1
JavaScript数组转字符串:两种方...
如何 用 js把 数组 转换成 字符串这里的系列窗口为您提供了两种方式。1。使用...
2
C语言实现三角形面积计算:海伦公式应用实...
如何用c语言编写已知三角形三边求面积?已知语言C可以找到三角形三角侧的面积,如下...
3
计算机专业核心:C语言在多学科中的应用与...
哪些专业学c语言对于计算机专业来说,入门级编程语言C是用来为学生的编程打下坚实的...
4
JSF架构解析与Java学习资源分享:J...
JavaServerFacesJSF体系结构JavaServerFaces(JS...
5
数据结构C语言版深度解析与C语言入门很简...
《数据结构(C语言版)》.严蔚敏吴伟民著.pdf在《数据结构(C语言版)》一书中...
6
C语言字符串常量解析:区别、用途及存储方...
什么是字符串常量字符串常量是C语言中的一种数据类型,它是由一对双引号括起来的字符...
7
C语言printf函数:格式字符串与输出...
printf函数中的格式与输出项有什么关系?在C语言中,printf函数中的格式...
8
Excel技巧:计算字符串起始位置与合并...
如何计算字符串在特定文本中的起始位置,怎么计算字符串在特定文本中的起始位置您可以...
9
Python发音全解:掌握正确的发音方法...
python怎么读我的很多学习编程的朋友可能都知道Python这个词,但是他们中...
10
字符与字符串:编程中的基础文本类型解析
字符串什么意思字符串是由数字、字母和下划线组成的字符串,表示为s=“a1a2…a...