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

PHP中的substr()函数用法示例及注意事项

发布时间:2023-06-17 09:36:51

substr()函数是用来截取字符串中指定长度的一部分并返回,非常常用的字符串处理函数。本文将详细介绍substr()函数的用法示例和注意事项。

一、语法及参数

substr()函数的语法如下:

string substr ( string $string , int $start [, int $length ] )

参数说明:

string:必选参数,要进行截取的字符串。

start:必选参数,截取的起始位置。可以是正整数,也可以是负整数(负数表示从字符串末尾开始计算截取位置)。

length:可选参数,要截取的长度。默认是截取从起始位置到字符串结尾的全部内容。如果指定了length,则截取从起始位置开始指定长度的内容。如果length是一个负数,则表示从起始位置截取,但不包括最后length个字符。

二、用法示例

1. 基本用法

下面是一个最简单的substr()函数示例:

$str = "Hello world!";

$sub = substr($str, 6);

echo $sub; //输出:world!

以上代码截取了从字符串 "Hello world!" 第6个字符(包括)开始到字符串结尾的所有字符,即 "world!"。

2. 指定截取长度

下面的示例截取了从字符串 "Hello world!" 第6个字符(包括)开始的3个字符:

$str = "Hello world!";

$sub = substr($str, 6, 3);

echo $sub; //输出:wor

以上代码从字符串 "Hello world!" 的第6个字符(包括)开始,截取了3个字符,即 "wor"。

3. 截取倒数第n个字符

下面的示例截取了字符串 "Hello world!" 的倒数第5个字符(即字符"o"):

$str = "Hello world!";

$sub = substr($str, -5, 1);

echo $sub; //输出:o

以上代码从字符串 "Hello world!" 的倒数第5个字符(包括)开始,截取了1个字符,即 "o"。

4. 截取多个字符

下面的示例截取了字符串 "Hello world!" 的第6个字符开始,共计4个字符:

$str = "Hello world!";

$sub = substr($str, 6, 4);

echo $sub; //输出:worl

以上代码从字符串 "Hello world!" 的第6个字符(包括)开始,截取了4个字符,即 "worl"。

三、注意事项

1. start参数不能是一个负数且绝对值大于字符串长度,否则将返回空字符串。

2. 如果指定了length参数,则截取的长度不超过原字符串的长度。

3. length参数如果是0,则截取的字符串为空字符串。

4. 如果length参数是一个负数,并且绝对值小于start参数所在的位置,在截取字符串时将忽略这个参数。

5. 如果start参数是0,length参数指定了截取的长度,则就相当于 substr() 函数的字符串截取功能,别名是substr()。

6. 如果start参数是0且length参数没有指定,则和substr()参数一样返回原字符串。

总的来说,substr()函数是非常实用的字符串处理函数,在PHP编程中应用广泛。掌握substr()函数的用法和注意事项,可以更好地运用该函数来实现各种字符串操作。