欢迎访问宙启技术站
智能推送

PHP函数:如何使用substr在字符串中截取子字符串?

发布时间:2023-06-22 15:12:53

substr是PHP语言中常见的字符串函数之一,用来截取字符串中的子字符串。substr函数的语法如下:

substr(string $string, int $start, ?int $length = null): string

string参数是要截取的字符串,start参数是截取的起始位置(从0开始),length参数是截取的长度(可选,默认截取到字符串结尾),返回值为截取后的子字符串。

下面详细介绍如何使用substr在字符串中截取子字符串。

1. 截取定长子字符串

如果要截取固定长度的子字符串,可以设置length参数为所想要的长度,示例代码如下:

$str = "Hello, world!";

$subStr = substr($str, 0, 5); //从0位置开始截取,截取5个字符

echo $subStr; //输出 "Hello"

2. 截取到字符串结尾

如果只想截取字符串的一部分,但不知道要截取多长,可以不设置length参数,直接从起始位置开始截取,直到字符串结尾,示例代码如下:

$str = "Hello, world!";

$subStr = substr($str, 7); //从7位置开始截取,直到字符串结尾

echo $subStr; //输出 "world!"

3. 截取一段子字符串

如果需要截取字符串中的任意一段子字符串,既可以设置起始位置start,也可以设置长度length,示例代码如下:

$str = "Hello, world!";

$subStr = substr($str, 7, 5); //从7位置开始截取,截取5个字符

echo $subStr; //输出 "world"

4. 截取多个子字符串

如果需要截取多个子字符串,可以循环调用substr函数,每次截取一个子字符串,示例代码如下:

$str = "Hello, world!";

$subStr1 = substr($str, 0, 5); //截取 "Hello"

$subStr2 = substr($str, 7, 5); //截取 "world"

echo $subStr1 . " " . $subStr2; //输出 "Hello world"

5. 截取最后几个字符

如果需要截取字符串中最后几个字符,可以使用substr函数的负数参数来表示,示例代码如下:

$str = "Hello, world!";

$subStr = substr($str, -6); //从倒数第6个位置开始截取,直到字符串结尾

echo $subStr; //输出 "world!"

6. 截取倒数第n个字符

如果需要截取字符串中倒数第n个字符,也可以使用substr函数的负数参数和长度参数来表示,示例代码如下:

$str = "Hello, world!";

$subStr = substr($str, -5, 2); //从倒数第5个位置开始截取,截取2个字符

echo $subStr; //输出 "rl"

综上所述,substr函数可以用来截取字符串中的子字符串,可以根据需要设置起始位置和长度,也可以直接截取到字符串结尾或从倒数第n个字符开始截取。在实际开发中,substr函数也是使用频率很高的字符串函数之一,能够满足很多字符串截取的需求。