学生が質問しました:
コードをコピーします コードは次のとおりです:
for ($i = 'A'; $i echo $i;
}
出力は何ですか? 🎜>出力は次のとおりです:
ABCDEFGHIJKLMNOPQRSTUVWXYZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARAS.... マニュアルをよくお読みください:
PHP は、C 言語ではなく文字変数の算術演算を扱う場合、Perl の規則に従います。 Perl の 'Z' 1 は 'AA' に変わりますが、C では 'Z' 1 は '[' ( ord('Z') == 90、 ord('[') == 91 ) に変わります。文字変数は可能であることに注意してください。
文字変数の算術演算を処理する場合、PHP は C の習慣ではなく Perl の習慣に従います。たとえば、Perl では 'Z' 1 は 'AA' を取得しますが、C では 'Z' 1 は '[' (ord('Z') == 90, ord('[') == 91) を取得します。文字変数は増分のみ可能で減分はできず、純粋な文字 (a ~ z および A ~ Z) のみがサポートされることに注意してください。
つまり、次の場合:
コードをコピー
コードは次のとおりです:
$name = " laruence" ; $name; // "laruencf"
および:
コードをコピー
コードは次のとおりです
$name = "laruence"; --$name; // 効果はありませんが、"laruence" のままです
この問題は、$ When i = Z, $i が AA になり、文字列を比較するときに、
AA、BB、XX ~ YZ がすべて Z 以下である場合です。