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

PHP函数substr的使用及常见应用场景(字符串截取)

发布时间:2023-06-14 12:05:20

substr是PHP内置函数中比较常用的一个,它主要用于截取字符串。substr的常见用法如下:

substr(string $string, int $start, int|null $length): string|false

其中,$string表示要截取的字符串;$start表示字符串截取的起始位置,可以是负数,表示从字符串末尾开始算起;$length表示要截取的长度,可以是负数,表示从起始位置开始,向前截取指定的长度,如果不设置,则代表截取从起始位置到字符串末尾的所有字符。

substr返回一个截取后的字符串,如果截取失败则返回false。

substr常见应用场景如下:

1. 截取字符串的一部分

例如,我们需要截取一个字符串的前三个字符,可以使用如下代码:

$string = "hello world";

$subString = substr($string, 0, 3);//"hel"

echo $subString;//输出"hel"

2. 截取字符串的一部分并对其进行格式化

例如,我们需要将一个日期字符串截取出年份并格式化输出,可以使用如下代码:

$dateString = "2021-10-01";

$year = substr($dateString, 0, 4);//"2021"

echo "今年是{$year}年";//输出"今年是2021年"

3. 截取文件名的后缀名

例如,我们需要获取一个文件名的后缀名,可以使用如下代码:

$fileName = "example.txt";

$extension = substr($fileName, strrpos($fileName, '.')+1);//"txt"

echo "文件的后缀名是{$extension}";

4. 截取URL地址中的域名

例如,我们需要从一个URL地址中获取域名,可以使用如下代码:

$url = "https://www.example.com/index.html";

$domain = substr($url, strpos($url, '://')+3);//"www.example.com"

$domain = substr($domain, 0, strpos($domain, '/'));//"www.example.com"

echo "域名是{$domain}";

5. 截取身份证号码中的出生日期

例如,我们需要从身份证号码中获取出生日期,可以使用如下代码:

$idCard = "510101198803011234";

$birthday = substr($idCard, 6, 8);//"19880301"

echo "出生日期是{$birthday}";

总的来说,substr函数用途非常广泛,可以用来处理各种字符串类型数据的截取需求。在实际开发中,我们可以结合具体业务需求进行适当的调整和灵活运用。