PHP

php strrpos怎么实现

小樊
81
2024-11-19 19:01:52
栏目: 编程语言

strrpos() 是 PHP 中的一个内置函数,用于在字符串中从后向前查找子字符串的最后一个出现位置

function strrpos_custom($haystack, $needle) {
    $haystack_length = strlen($haystack);
    $needle_length = strlen($needle);

    for ($i = $haystack_length - $needle_length; $i >= 0; $i--) {
        if (substr($haystack, $i, $needle_length) === $needle) {
            return $i;
        }
    }

    return -1;
}

// 使用示例
$haystack = "Hello, welcome to the world of PHP!";
$needle = "PHP";

$position = strrpos_custom($haystack, $needle);

if ($position !== -1) {
    echo "The last occurrence of '{$needle}' is at position: {$position}";
} else {
    echo "The substring '{$needle}' was not found in the string.";
}

这个 strrpos_custom() 函数首先计算输入字符串和要查找的子字符串的长度。然后,它从字符串的末尾开始逐个检查每个子字符串,直到找到与子字符串匹配的部分或到达字符串的开头。如果找到匹配项,函数返回该子字符串在原始字符串中的位置;否则,返回 -1。

0
看了该问题的人还看了