count()函数获取子字符串出现次数的方法

substr_count()函数定义如下:

substr_count(string,substring,start,length)

参数说明:

string     必需。规定被检查的字符串。
substring  必需。规定要搜索的字符串。
start      可选。规定在字符串中何处开始搜索。
length     可选。规定搜索的长度。

示例代码如下:

<?php $str="脚本之家提供大量脚本代码及脚本特效下载"; echo substr_count($str,"脚本"); echo "<br/>"; echo substr_count($str,"脚本",16);//指定在第16个字符后开始搜索 echo "<br/>"; echo substr_count($str,"脚本",16,10);//指定从第16个字符开始往后搜索10个字符结束 ?>

运行结果如下:

3 2 1

参数 描述
string   必需。规定被检查的字符串。  
substring   必需。规定要搜索的字符串。  
start   可选。规定在字符串中何处开始搜索。  
length   可选。规定搜索的长度。  

技术细节

返回值:   返回子串在字符串中出现的次数。  
PHP 版本:   4+  
更新日志:   PHP 5.1 中,新增了 start 和 length 参数。  

更多实例

例子 1

使用所有的参数:

<?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

重叠的子串:

<?php $str = "abcabcab"; echo substr_count($str,"abcab"); // 此函数不会对重叠的子字符串计数 ?>

例子 3

如果 start 和 length 参数超过字符串长度,则该函数会输出一个警告:

<?php echo $str = "This is nice"; substr_count($str,"is",3,9); ?>

因为长度值超过字符串的长度(3 + 9 大于 12),使用会输出一个警告。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/d7e6d861c4b7b03d104a34e83101e90e.html