php中常用的截取整理字符串的几种方式

编辑:管理员 发布时间:2021-12-07 16:04:531151

在php代码中字符串函数是PHP的核心组成部分,有着许多类型对各种字符串处理的一些函数.

我们在处理字符串时,用到比较多的就是字符串截取了.

那么在php代码中都有哪些常用的字符串截取方式呢?

1.substr(字符串,开始位置,长度),它可以快速的从指定位数开始截取固定长度的字符串.

<?php

$zifu ="wqtool.com";

echo substr($zifu,3);

echo substr($zifu,2,4);

echo substr($zifu,-3);

?>

输出结果分别为:

从字符串的第三位截取开始,返回剩下的部分ool.com

从第二位开始截取,返回接下来的4个字符tool

参数为负数,-3时则从结尾开始取com

当字符串里出现中文时,由于汉字是两个字节而英文只有一个字节所以容易出现乱码.

这时候我们会需要开启php.ini里的extension=php_mbstring扩展

mb_substr与substr用法一样.

<?php

echo mb_substr("文字内容",2,1,"UTF-8");

?>

输出结果为:内

无论substr与mb_substr,都是从指定位数开始返回剩下的部分,那么怎样反过来返回之前的字符呢?

代码如下:

<?php

$weishu=3;

echo mb_substr( "文字内容", 0, mb_strlen( "文字内容", 'utf8' )-$weishu );

?>

mb_substr是从第3位为开始向后面截取,那么为了向之前截取,那么开始值就得设置位0,然后计算指定字符串的字符个数再减去指定的位数就得到了向之前截取的长度了.

以上是指定位数开始截取,能否扩展下指定的字符开始截取该怎样实现呢?

代码如下:

<?php

echo substr("abcde",stripos( "abcde", "c" ));

echo substr("abcde",0,stripos( "abcde", "c" ));

?>

以上分别会输出:de、ab

原理也很简单,通过stripos查找指定字符"c"在abcde字符中第一次出现的位置,就可以实现指定字符串开始向左或向右截取字符了。

以上就是一些在php常见的对字符串截取进行处理的几种方式.

TAGS: php 文字处理
热门文章
最新文章

热门标签

数学计算路径命令行表单字符符号nginxcookiejavapython数组文字处理小数服务器管理apache图片处理