文字(列)のインクリメント

back
$chr = "a";
$chr++;    # <- b になる

$chr = "z";
$chr++;    # <- aa になる(桁上がり)

ちなみに、z の次は aa で、Z の次は AA 。小文字->大文字(または逆)にはならない。(多分)

$str = "aZ";
$str++;    # <- bA

$str = "zZ";
$str++;    # <- aaA

ただし、デクリメントはできない。(なんで?)

数字で構成される文字列も、文字列として処理される

$str = "00";
$str++;    # <- 01

これは、
$str += 1; だと、01 ではなく 1 になる。

この場合のデクリメントは、数値として処理される。

undef は数値コンテキスト扱いになり、undef -> ++ -> 1 になる。

back