字符串函数

PHP substr() 函数

主题:PHP 字符串参考上一页|下一页

说明

substr() 函数提取字符串的一部分。

下表总结了该函数的技术细节。

返回值: 返回提取的字符串部分; 或 FALSE 失败,或空字符串。
变更日志: 自 PHP 7.0 起,如果 start 等于 string 长度,则此函数返回一个空字符串 ("")。 在早期版本中,它返回 FALSE
版本: PHP 4+

语法

substr() 函数的基本语法如下:

substr(string, start, length);

下面的例子展示了 substr() 函数的作用。

<?php
// 示例字符串
$str = "Alice in Wonderland";

// 获取子字符串
echo substr($str, 0, 5);
?>

提示: 字符串位置从 0 开始,而不是 1。例如,在字符串"lemon"中,位置 0 的字符是"l",位置 1 的字符是"e",而 等等。

注意:如果start大于字符串长度,则返回FALSE。 另外,如果省略length 参数,则返回从start 到字符串结尾的子字符串。


参数

substr() 函数接受以下参数。

参数 说明
string 必填。 指定要处理的字符串。
start

必填。 指定字符串中提取的开始位置。

  • 如果 start 是正数,则返回的字符串将从 string 中的第 start 个位置开始,从零开始计数。
  • 如果 start 为负数,则返回的字符串将从 string 末尾的第 start 个字符开始。
  • 如果 string 小于 start 个字符,则返回 FALSE
length

可选。 指定要提取的字符数。

  • 如果length为正数,则返回的字符串最多包含从string 开始的length个字符(取决于字符串的长度)。
  • 如果length为负数,则字符串末尾会省略那么多字符(start为负数时计算起始位置后)。
  • 如果 length 为 0、FALSENULL,则返回空字符串。

更多示例

这里有更多示例展示了 substr() 函数的实际工作原理:

下面的例子演示了正负start参数的用法。

<?php
// 示例字符串
$str = "Alice in Wonderland";

// 获取子字符串
echo substr($str, 9)."<br>";
echo substr($str, 6, 2)."<br>";
echo substr($str, -4)."<br>";
echo substr($str, -10, 6);
?>

下面的例子演示了正负length参数的用法。

<?php
// 示例字符串
$str = "Alice in Wonderland";

// 获取子字符串
echo substr($str, 2, 3)."<br>";
echo substr($str, 9, -4)."<br>";
echo substr($str, -13, 2)."<br>";
echo substr($str, -10, -7);
?>
Advertisements