/** * Find the position of the Xth occurrence of a substring in a string * @param $haystack * @param $needle * @param $number integer > 0 * @return int */ function strposX($haystack, $needle, $number) { if ($number == '1') { return strpos($haystack, $needle); } elseif ($number > '1') { return strpos($haystack, $needle, mslib_befe::strposX($haystack, $needle, $number - 1) + strlen($needle)); } else { return error_log('Error: Value for parameter $number is out of range'); } }