PHP substr_count() 函数

实例

计算 "Shanghai" 在字符串中出现的次数:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. echo substr_count("I love Shanghai. Shanghai is the biggest city in china.","Shanghai");
  6. ?>
  7. </body>
  8. </html>

substr_count() 函数计算子串在字符串中出现的次数。

注释:子串是区分大小写的。

注释:该函数不计数重叠的子串(参见例子 2)。

注释:如果 start 参数加上 length 参数大于字符串长度,则该函数生成一个警告(参见例子 3)。


语法

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

技术细节

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

更多实例

例子 1

使用所有的参数:

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

重叠的子串:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. echo $str = "This is nice";
  6. substr_count($str,"is",3,9);
  7. ?>
  8. </body>
  9. </html>
例子 3

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

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

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

分类导航