本文实例讲述了PHP中substr_count()函数获取子字符串出现次数的方法。分享给大家供大家参考,具体如下:
PHP中的substr_count()可用于计算指定字符串中子字符串出现的次数。
substr_count()函数定义如下:
substr_count(string,substring,start,length)
参数说明:
string 必需。规定被检查的字符串。
substring 必需。规定要搜索的字符串。
start 可选。规定在字符串中何处开始搜索。
length 可选。规定搜索的长度。
示例代码如下:
1
2
3
4
5
6
7
8
|
<?php $str = "服务器之家提供大量脚本代码及脚本特效下载" ; echo substr_count( $str , "服务器" ); echo "<br/>" ; echo substr_count( $str , "服务器" ,16); //指定在第16个字符后开始搜索 echo "<br/>" ; echo substr_count( $str , "服务器" ,16,10); //指定从第16个字符开始往后搜索10个字符结束 ?> |
运行结果如下:
1
2
3
|
3 2 1 |
参数 | 描述 |
---|---|
string | 必需。规定被检查的字符串。 |
substring | 必需。规定要搜索的字符串。 |
start | 可选。规定在字符串中何处开始搜索。 |
length | 可选。规定搜索的长度。 |
技术细节
返回值: | 返回子串在字符串中出现的次数。 |
PHP 版本: | 4+ |
更新日志: | 在 PHP 5.1 中,新增了 start 和 length 参数。 |
更多实例
例子 1
使用所有的参数:
1
2
3
4
5
6
7
8
|
<?php $str = "This is nice" ; echo strlen ( $str ). "<br>" ; // 使用 strlen() 来返回字符串长度 echo substr_count( $str , "is" ). "<br>" ; // 字符串中 "is" 出现的次数 echo substr_count( $str , "is" ,2). "<br>" ; // 字符串缩减为 "is is nice" echo substr_count( $str , "is" ,3). "<br>" ; // 字符串缩减为 "s is nice" echo substr_count( $str , "is" ,3,3). "<br>" ; // 字符串缩减为 "s i" ?> |
例子 2
重叠的子串:
1
2
3
4
|
<?php $str = "abcabcab" ; echo substr_count( $str , "abcab" ); // 此函数不会对重叠的子字符串计数 ?> |
例子 3
如果 start 和 length 参数超过字符串长度,则该函数会输出一个警告:
1
2
3
4
|
<?php echo $str = "This is nice" ; substr_count( $str , "is" ,3,9); ?> |
因为长度值超过字符串的长度(3 + 9 大于 12),使用会输出一个警告。
希望本文所述对大家PHP程序设计有所帮助。