PHP substr()
函数用于字符串的截取,它也是开发过程中最常用的字符串函数之一。
substr() 函数返回由 start
和 length
参数指定的字符串的一部分。
语法
substr() 函数的语法如下所示。它包含三个参数,其中前两个是必传的参数,一个是可选的参数。
substr( $string, $start, $length )
参数
参数 | 说明 | 必须/可选 |
---|---|---|
string | 指定要截取的字符串 | 必须 |
start | 字符串截取的开始位置,它具有三个条件:
| 必须 |
length | 此参数用于截取字符串的长度。它具有以下条件:
| 可选 |
返回值
substr() 函数返回截取成功的字符串部分内容。否则,失败时返回 FALSE 或空字符串。
注意
PHP4及以上版本支持此函数。
更新日志
- 在 PHP 7.0.0 中,如果 $string 等于 $start,则 substr()函数返回一个空字符串。在这个版本之前,这种情况下返回FALSE。
- 在PHP 5.2.2 - PHP 5.2.6中,如果$start参数表示负截断的位置或超出的位置,则返回FALSE,而其他版本从 $start 获取字符串。
例子
下面给出了一些示例,通过这些示例我们可以了解substr()
函数的用法。让我们看看下面的示例
示例1
<?php
//起始位置为正数
echo substr("Hello yxjc123", 3). "</br>";
echo substr("Hello yxjc123", 0). "</br>";
echo substr("Hello yxjc123", 9). "</br>";
//起始位置为负数
echo substr("Hello yxjc123", -4). "</br>";
echo substr("Hello yxjc123", -10). "</br>";
echo substr("Hello yxjc123", -16). "</br>";
?>
输出:
lo yxjc123
Hello yxjc123
c123
c123
lo yxjc123
Hello yxjc123
Hello yxjc123
c123
c123
lo yxjc123
Hello yxjc123
示例2
<?php
//通过同时传递 $start 和 $length 参数
echo substr("Hello yxjc123", 3, 8). "</br>";
echo substr("Hello yxjc123", 0, 9). "</br>";
echo substr("Hello yxjc123", 6, -4). "</br>";
echo substr("Hello yxjc123", 4, -7). "</br>";
echo substr("Hello yxjc123", -6, -1). "</br>";
echo substr("Hello yxjc123", -6, -10). "</br>";
?>
输出:
lo yxjc1
Hello yxj
yxj
o
xjc12
Hello yxj
yxj
o
xjc12
示例3
<?php
//通过在 $length 参数中传递0
echo substr("Hello yxjc123", 7, 0). "</br>";
?>
输出: