3v4l.org

run code in 300+ PHP versions simultaneously
<?php function countFoundSequences(string $needle, string $haystack): int { if (!$needle) { return 0; } $tally = 0; $need = substr($needle, 0, 1); foreach (str_split($haystack) as $i => $straw) { if ($need === $straw) { if ($need === $needle) { ++$tally; } else { $tally += countFoundSequences( substr($needle, 1), substr($haystack, $i + 1) ); } } } return $tally; } echo countFoundSequences('abc', 'abcababc');

preferences:
34.38 ms | 405 KiB | 5 Q