在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>'; // 好词雅网
使用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