How to count the number of non-overlapping instances of substring in a string in PHP

1 Answer

0 votes
function countOccurrences($str, $sub) {
    if (empty($sub)) return 0;
    
    $count = 0;
    $offset = strpos($str, $sub);
    while ($offset !== false) {
        $count++;
        $offset = strpos($str, $sub, $offset + strlen($sub));
    }
    
    return $count;
}

$s = "java php c++ python php phphp";

echo countOccurrences($s, "php") . "\n";

 
  
/*
run: 
 
3
 
*/

 



answered Aug 24, 2024 by avibootz
...