PHPで組み込み関数を使用せずに文字列を逆にする方法


方法1: ループを使用して文字列を逆にする

function reverseString($str) {
    $reversed = '';
    for ($i = strlen($str) - 1; $i >= 0; $i--) {
        $reversed .= $str[$i];
    }
    return $reversed;
}
$input = "Hello, World!";
$reversedString = reverseString($input);
echo $reversedString;  // 出力: "!dlroW ,olleH"

この方法では、$reversedという空の文字列を作成し、入力文字列の最後から始めて1文字ずつ取り出して$reversedに追加します。

方法2: 再帰を使用して文字列を逆にする

function reverseString($str) {
    if (strlen($str) <= 1) {
        return $str;
    }
    return reverseString(substr($str, 1)) . $str[0];
}
$input = "Hello, World!";
$reversedString = reverseString($input);
echo $reversedString;  // 出力: "!dlroW ,olleH"

この方法では、再帰関数を使用して文字列を逆にします。関数は文字列の最初の1文字を取り出し、残りの文字列を再帰的に逆にします。最後に最初の1文字を追加して逆転した文字列を返します。

方法3: str_splitとarray_reverseを使用して文字列を逆にする

function reverseString($str) {
    $characters = str_split($str);
    $reversed = implode('', array_reverse($characters));
    return $reversed;
}
$input = "Hello, World!";
$reversedString = reverseString($input);
echo $reversedString;  // 出力: "!dlroW ,olleH"

この方法では、str_split()関数を使用して文字列を1文字ずつ分割し、array_reverse()関数を使用して文字列の配列を逆にします。最後にimplode()関数を使用して配列を文字列に結合します。

これらはいくつかのPHPで文字列を逆にする方法の例です。組み込み関数を使用せずにこれらの方法を使用することで、文字列の逆転を実現できます。