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

本文实例讲述了PHP中substr_count()函数获取子字符串出现次数的方法。分享给大家供大家参考,具体如下:

PHP中的substr_count()可用于计算指定字符串中子字符串出现的次数。

substr_count()函数定义如下:

substr_count(string,substring,start,length)

参数说明:

string 必需。规定被检查的字符串。

substring 必需。规定要搜索的字符串。

start 可选。规定在字符串中何处开始搜索。

length 可选。规定搜索的长度。

示例代码如下:

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

运行结果如下:

3

2

1

参数 描述

string 必需。规定被检查的字符串。

substring 必需。规定要搜索的字符串。

start 可选。规定在字符串中何处开始搜索。

length 可选。规定搜索的长度。

技术细节

返回值: 返回子串在字符串中出现的次数。

PHP 版本: 4+

更新日志: 在 PHP 5.1 中,新增了 start 和 length 参数。

更多实例

例子 1

使用所有的参数:

  1. <?php
  2. $str = "This is nice";
  3. echo strlen($str)."<br>"; // 使用 strlen() 来返回字符串长度
  4. echo substr_count($str,"is")."<br>"; // 字符串中 "is" 出现的次数
  5. echo substr_count($str,"is",2)."<br>"; // 字符串缩减为 "is is nice"
  6. echo substr_count($str,"is",3)."<br>"; // 字符串缩减为 "s is nice"
  7. echo substr_count($str,"is",3,3)."<br>"; // 字符串缩减为 "s i"
  8. ?>

例子 2

重叠的子串:

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

例子 3

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

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

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