PHP substr_count() 函数
实例
计算 "Shanghai" 在字符串中出现的次数:
<?php echo substr_count("I love Shanghai. Shanghai is the biggest city in china.","Shanghai"); ?>
substr_count() 函数计算子串在字符串中出现的次数。
注释:子串是区分大小写的。
注释:该函数不计数重叠的子串(参见例子 2)。
注释:اگر شروع 参数加上 طول 参数大于字符串长度,则该函数生成一个警告(参见例子 3)。
语法
substr_count(string,substring,شروع,طول)
参数 | 描述 |
---|---|
string | 必需。规定被检查的字符串。 |
substring | 必需。规定要搜索的字符串。 |
شروع | 可选。规定在字符串中何处开始搜索。 |
طول | 可选。规定搜索的长度。 |
جزئیات فنی
مقدار بازگشتی: | تعداد دفعات ظاهر شدن زیررشته در رشته را بازمیگرداند. |
نسخه PHP: | 4+ |
گزارش بهروزرسانی: | در PHP 5.1، شروع و طول پارامترها. |
نمونههای بیشتر
مثال 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
اگر شروع و طول اگر پارامترها بیشتر از طول رشته باشند، این فونکشن یک هشدار نمایش میدهد:
<?php echo $str = "This is nice"; substr_count($str,"is",3,9); ?>
چون مقدار طول بیشتر از طول رشته است (3 + 9 بیشتر از 12)، استفاده از آن یک هشدار را نمایش میدهد.