PHP函数之substr(截取字符串)
substr函数是PHP中用于截取字符串的函数。它的格式如下:
substr(string $string, int $start, int $length = ?):string
其中,$string是需要截取的字符串;$start是截取的起始位置,从0开始算起;$length是截取的长度,如果不传入则默认截取到字符串末尾。函数返回值为截取后的字符串。
例如,截取字符串"hello world"中的"world":
$string = "hello world"; $substr = substr($string, 6); echo $substr; // 输出: world
上述代码中,$string为需要截取的字符串,$substr为截取后的子字符串,substr函数传入6作为起始位置,因为"w"是字符串中第6个字符,因此截取的结果为"world"。
除了上述例子中的默认用法,substr函数还可以传入$length参数来指定截取的长度。例如,截取字符串"hello world"中的"wor":
$string = "hello world"; $substr = substr($string, 6, 3); echo $substr; // 输出: wor
上述代码中,substr函数传入6作为起始位置,3作为截取的长度,结果为"wor"。
需要注意的是,substr函数的参数$start和$length都是从0开始算起的。如果传入的$start超过了字符串的长度,则截取的结果为空字符串。
另外,substr函数也支持传入负数作为参数。如果传入负的$start,则从字符串末尾开始截取,例如,从"hello world"中截取"world"可以这样实现:
$string = "hello world"; $substr = substr($string, -5); echo $substr; // 输出: world
上述代码中,substr函数传入-5作为起始位置,因为从字符串末尾开始算起的第五个字符为"w",因此截取结果为"world"。
如果传入负数作为$length,则表示截取到字符串末尾前面的多少个字符。例如,截取"hello world"中的"wor"可以这样实现:
$string = "hello world"; $substr = substr($string, 6, -1); echo $substr; // 输出: wor
上述代码中,substr函数传入6作为起始位置,-1表示截取到"r"前面的一个字符,因此结果为"wor"。
综上所述,substr函数是PHP中非常常用的字符串截取函数,可以根据需要,灵活地截取字符串的指定部分。
