记录学习与后端知识并分享学习代码过程(会飞的鱼Blog)

详解php字符串截取的两种方法

会飞的鱼 0 965 2022年11月19日

在PHP中substr()函数和mb_substr()函数可以指定和截取字符串的一部分。

在本文中我们将详细的来讲解下如何使用 substrmb_substr 截取字符串,以及substr()函数和mb_substr()函数有什么区别?

使用substr()函数截取字符
substr是一个可以获取部分指定字符串的函数。例如有字符串abcd。

如果指定起始位置为0,则可以从a中获取指定字符数的字符串,如果指定2则可以从c中获取指定字符数的字符串。

我们实际来看下如何使用substr

<?php
    $str = "abcde";
    echo substr($str,1);
?>

输出结果:

bcde

在上面的示例代码中,由于指定了 1 为起始位置,并且没有指定字符数,因此得到了从“b”到结尾的字符串。

<?php
    $str = "abcde" ; 
    echo substr ($str , 1 , 3 );
?>

输出结果

bcd

接下来我们将起始位置1指定为字符数3,并从字符串“absde”中获取中间的3个字符。

<?php
$str = "AIUEO" ; 
echo substr ( $str , 1 , 3 );
?>

需要注意的是即使使用相同的代码,如果字符串是中文,那么获取的字符会出现乱码。

详解php字符串截取的两种方法

使用mb_substr函数截取字符
mb_substr也是截取部分指定字符串的函数,但和substr有什么区别呢?

mb_substr除了指定起始位置和字符数外,还可以指定字符串的编码。

我们在处理中文字符串时可以使用mb_substr()

<?php
$str = "absde";
echo mb_substr($str,1,3);
?>

输出结果:

bcd

获取中文字符的方式

<?php
$str = "你好啊哈哈哈";
echo mb_substr($str,1,3,"UTF-8");
?>

输出结果

好啊哈
本文由 @会飞的鱼 于 2022-11-19 发布在 会飞的鱼Blog,如无特别说明,本博文章均为原创,转载请保留出处。

网友评论

    暂无评论

会飞的鱼 在线咨询

在线时间:9:00-22:00
周六、周日:14:00-22:00