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

yipeiwu_com6年前PHP代码库

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

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

substr_count()函数定义如下:

substr_count(string,substring,start,length)

参数说明:

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

示例代码如下:

<?php
 $str="【宜配屋www.yipeiwu.com】提供大量脚本代码及脚本特效下载";
 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),使用会输出一个警告。

更多关于PHP字符串操作相关内容可查看本站专题:《php字符串(string)用法总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php输出全球各个时区列表的方法

本文实例讲述了php输出全球各个时区列表的方法。分享给大家供大家参考。具体实现方法如下: <?php $timezones = array ( '(GMT-12:00...

PHP生成唯一订单号

在网上找了一番,发现这位同学的想法挺不错的,redtamo,具体的请稳步过去看看,我作简要概述,该方法用上了英文字母、年月日、Unix 时间戳和微秒数、随机数,重复的可能性大大降低,还是...

PHP下利用header()函数设置浏览器缓存的代码

这涉及到4种头标类型: Last-Modified(最后修改时间); Expires(有效期限); Pragma(编译指示); Cache-Control(缓存控制);   前三个头标属...

检查url链接是否已经有参数的php代码 添加 ? 或 &amp;

比如分页,因为有些链接已经有参数了,在附加分页信息的时候不能把原有的参数丢掉,所以判断一下链接是否有参数,然后根据需要附加分页信息。 方法很简单: 复制代码 代码如下:((strpos(...

解决PHP超大文件下载,断点续传下载的方法详解

最近导出的时候出现一个php内存溢出的问题,原因就是在于下载的时候读取生成的临时文件过大,PHP内存无法容纳,一开如是想到更改PHP内存限制,但是这个只是一个缓兵之计,于是想到了另外一个...