📌  相关文章
📜  PHP |检查一个字符串的程序是另一个字符串的旋转(1)

📅  最后修改于: 2023-12-03 15:03:40.724000             🧑  作者: Mango

PHP | 检查一个字符串的程序是否是另一个字符串的旋转

本文将介绍如何使用PHP编写一个程序,以检查一个字符串是否是另一个字符串的旋转。

程序思路

我们可以先判断两个字符串的长度,如果长度不相等,则肯定不是旋转。如果长度相等,则将第一个字符串复制下来,再将其末尾与开头连接,然后检查第二个字符串是否是该字符串的子串。如果是子串,则说明第二个字符串是第一个字符串的旋转。

代码实现

以下是使用PHP实现上述思路的代码示例:

function isRotation($str1, $str2) {
    // 如果字符串长度不同,则肯定不是旋转
    if (strlen($str1) != strlen($str2)) {
        return false;
    }
    
    // 将第一个字符串复制下来并连接末尾和开头
    $str1_copy = $str1 . $str1;
    
    // 如果第二个字符串是第一个字符串的子串,则说明是旋转
    if (strpos($str1_copy, $str2) !== false) {
        return true;
    }
    
    return false;
}
使用示例

以下代码演示了如何使用上述函数检查一个字符串是否是另一个字符串的旋转:

if (isRotation("abcde", "cdeab")) {
    echo "旋转";
} else {
    echo "不是旋转";
}

以上代码将输出 旋转