4

これは、関数引数を使用して文字列が回文であるかどうかを確認する php コードです..ステップバイステップで教えてください..何が起こっているのか..私は理解できません

function Palindrome($string) {

    if ((strlen($string) == 1) || (strlen($string) == 0)) {
        echo " STRING IS PALINDROME";
    }

    else {

        if (substr($string,0,1) == substr($string,(strlen($string) - 1),1)) {
            return Palindrome(substr($string,1,strlen($string) -2));
        }
        else { echo " STRING IS NOT A PALINDROME"; }
    }
}


Palindrome("121");
4

5 に答える 5

1

文字列が回文かどうかを確認するために再帰関数を使用しています。まずはstrlen()関数で文字列の長さが1か0かをチェックしています。はいの場合は直接「yes」を返します。そうでない場合は、最初の文字、つまり substr($string,0,1) と最後の文字、つまり substr($string,(strlen($string) - 1),1) をチェックします。true の場合、最初の文字と最後の文字を除外して部分文字列を再帰的にチェックします。つまり、回文 (substr($string,1,strlen($string) -2)); です。

于 2013-06-21T13:34:59.717 に答える