PHP substr_count() 函數

實例

計算 "Shanghai" 在字符串中出現的次數:

<?php
echo substr_count("I love Shanghai. Shanghai is the biggest city in china.","Shanghai");
?>

運行實例

substr_count() 函數計算子串在字符串中出現的次數。

注釋:子串是區分大小寫的。

注釋:該函數不計數重疊的子串(參見例子 2)。

注釋:如果 start 參數加上 length 參數大于字符串長度,則該函數生成一個警告(參見例子 3)。

語法

substr_count(string,substring,start,length)
參數 描述
string 必需。規定被檢查的字符串。
substring 必需。規定要搜索的字符串。
start 可選。規定在字符串中何處開始搜索。
length 可選。規定搜索的長度。

技術細節

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

更多實例

例子 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

如果 startlength 參數超過字符串長度,則該函數會輸出一個警告:

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

因為長度值超過字符串的長度(3 + 9 大于 12),使用會輸出一個警告。