PHPでrot13暗号アルゴリズムを実装しようとしています。ただし、Java と比べると少し難しいです。
char a = 'A';
a += 13;
System.out.println(a);
output will be : N
ただし、php 5.0 では:
$a = 'A';
$a += 13;
echo "$a";
output will be: 13.
Javaと同じように実装するにはどうすればよいですか?
前もって感謝します。
PHP は緩く型付けされているため、文字列に 13 を追加すると、文字列は 0 と評価されます。
あなたができることは次のとおりです。
$a = "A";
$val_a = ord($a);
$val_a += 13;
echo chr($val_a);
特に rot13 を実行する場合は、str_rot13()
関数を使用できます。
$a = 'A';
echo str_rot13($a); // Outputs N