php trim函数的详细介绍
发布时间:2022-06-15 11:23:04 所属栏目:PHP教程 来源:互联网
导读:本篇文章给大家带来的内容是关于php trim函数的详细解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 字符串的处理在任何程序中应该是最最常见的了吧。php 的trim函数就是用来去除字符串的字符串。最常用的就是去除空格了。但是,这个
|
本篇文章给大家带来的内容是关于php trim函数的详细解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 字符串的处理在任何程序中应该是最最常见的了吧。php 的trim函数就是用来去除字符串的字符串。最常用的就是去除空格了。但是,这个简单的函数,是否真的像你认为的那样简单呢? trim函数的定义如下: trim是两边去除,还有ltrim 从左边去除,rtrim从右边去除,在php源码中,最终都是通过一个函数处理的。所以一下关于trim是对php 内部统一的trim而言。 源码在ext/standard/string.c中php_trim函数中。 trim函数处理逻辑: 1、判断是否设置去除内容what,没设置则去除默认字符串 2、判断去除内容的长度,分为1个字符,多个字符去除 3、使用model分别与1,2按位与运算,确定是否进行左右去除 去除一个字符的情况: 对于左边去除,遍历字符串的每个字符,把第一个与what不相等的字符的位置作为新字符串的起始位置,同时更新长度 对右边去除,从右边开始遍历,找到第一个不等于what的字符,把字符串长度减去遍历次数。 到这里,新字符串起始位置有了,长度也确定了,然后执行字符串赋复制命令,返回去除之后的字符串 去除多个字符串的情况: 首先使用一个mask数据,用于标记那些需要去除的字符串(mask 可以理解为一个以字符ascii值为键值的hash表)。 然后执行操作跟去除一个字符类似,只是结束条件是寻找到第一个不在字符表里的元素。 默认情况: 处理方式跟之前一样,只是去除内容限制在ascii码小于32(即空格)的字符。且只去除’r’,’t’,’v’,’ |
