使用PHP的substr()函数获取字符串的一部分

php中,我编写了一个示例代码,它使用 substr 来获取字符串的一部分。

如何使用substr

您可以使用 substr 获取字符串的一部分。

语法

substr(string,start,length)

下面是获取字符串的一部分的示例代码。

<?php

$str = 'abcde';

// 起始位置第3个字符
echo substr($str, 2) . '</br>';
// cde

// 起始位置第4个字符
echo substr($str, 3) . '</br>';
// de

如果指定负值,则可以从后面检索。

<?php

$str = 'abcde';

// 起始位置 最后2个字符
echo substr($str, -2) . '</br>';
// de

// 起始位置 最后1个字符
echo substr($str, -1) . '</br>';
// e

您还可以指定要检索的字符数。

<?php

$str = 'abcde';

// 起始位置 第2个字符开始,获取2个字符
echo substr($str, 1, 2) . '</br>';
// bc

// 起始位置 第2个字符开始,获取3个字符
echo substr($str, 1, 3) . '</br>';
// bcd

如果您指定要获取的字符数为负数,它们将被删除。

<?php
$str = 'abcde';

//  起始位置 第2个字符开始,删除最后一个字符
echo substr($str, 1, -1) . '</br>';
// bcd

对于中文,结果很奇怪,因为它是多字节的。

<?php

$str = '你好烽烟博客';

// 起始位置第3个字符
echo substr($str, 2) . '</br>';
// �好烽烟博客

// 起始位置第4个字符
echo substr($str, 3) . '</br>';
// 好烽烟博客

使用PHP的substr()函数获取字符串的一部分

使用mb_substr()函数

对于中文可以使用“mb_substr”。

mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] ) : string

以下是用于检索包含中文字符的字符串的一部分的示例代码。

<?php

$str = '你好烽烟博客';

// 起始位置第3个字符
echo mb_substr($str, 2) . '</br>';
// 烽烟博客

// 起始位置第4个字符
echo mb_substr($str, 3) . '</br>';
// 雅网

对于字母,mb_substr与“substr”获取的结果相同。

<?php

$str = 'abcde';

// 起始位置第3个字符
echo mb_substr($str, 2) . PHP_EOL;
// cde

// 起始位置第4个字符
echo mb_substr($str, 3) . PHP_EOL;
// de


最后编辑于:2023/03/21作者: 烽烟无限