入门 - 常用字符串函数 ¶
作者:KK
发表日期:2016.9.6
我目前PHP从业经验5年,在写PHP代码的过程中可以总结到的就是经常对数字
、字符串
和数组
进行数据处理,其中字符串
的处理也要经常用到字符串处理函数,有以下函数:
//这些是最常用的
trim($str) //去掉字符串左右两边空格后的字符串
ltrim //去掉字符串左边的空格
rtrim //去掉右边的空格
strlen //计算长度,前面讲过
mb_strlen //计算特定编码字符的长度
substr //裁剪字符串,比如从abcdefg中取出cde这个片段
mb_substr //同上,只是有非英文的文字时就常用这个,其它mb_xx的函数都是针对非英文的,有更多需求就看手册,常用就两个mb
strpos //查找指定字符串首次出现的位置,要注意的是查不到会返回 false,查到第1个字符就是要找的字符的话会是0,后面的是1,2,3……
stripos //同上,但这个不分大小写查找
strstr //也是查字符串的,但会返回查找到的部分
stristr //同上,但这个不分大小写查找
strtolower //将字符串里的英文全部转成小写
strtoupper //相反,转成大写
explode //将字符串以某个符号为标记分割成数组
iconv //转换字符串的编码
mb_convert_encoding //高级转换编码,就看看,用到再查它详细吧
md5 //计算一个字符串的MD5值,通常用于校验
md5_file //计算文件的MD5你懂的,其实不咋用,连带md5一起冒泡
//下面这些在项目里通常最多用不过3次
parse_str //将url上的QueryString片段解析成数组,一般是框架的路由层和curl封装类常见
strrev //将字符串反转,比如 ABCD 变成 DCBA 咯
ucfirst //将字符串的首字符改成大写,jay变成Jay咯
ucwords //将每个单词的首字母转成大写
print //输出,但输出一般用echo,我个人更多用在模板上
substr_count //计算字串出现的次数
strrpos //和strpos相反,查找指定字符串的最后一次出现的位置
举两个粟子 ¶
这里拿几个经常接触的函数做例子:
trim
去空格或去别的 ¶$str = ' abc!'; var_export([ '未去除空格' => $str, '已去除空格' => trim($str), '指定去叹号' => trim($str, '!'), '去除多个' => trim($str, ' !'), //去除两边的空格和叹号 ]);
substr
和mb_substr
裁剪字符串 ¶var_export([ '从第1个字符后面开始裁剪' => substr('ab,cde!', 1), // b,cde! '从第2个字符后面开始裁剪' => substr('ab,cde!', 3), // cde! '从第0个字符后面开始裁剪' => substr('ab,cde!', 0), // ab,cde! '从第2个后面裁剪3个字符' => substr('ab,cde!', 2, 3), // ,cd '从第6个后面裁剪1个' => substr('ab,cde!', 6, 1), // ! '得到乱码' => substr('中国人', 1, 1), 'GBK/GB2312编码得 国' => substr('中国人', 1, 2), 'UTF-8编码得 国' => substr('中国人', 1, 3), '正常' => mb_substr('中国人', 1, 1, 'UTF-8'), '国人' => substr('中国人', 1, 2, 'UTF-8'), ]);